NVIDIA DRIVE OS Linux API Reference

5.1.3.0 Release

 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Camera Control Protocol

Detailed Description

Describes an API that uses the NVIDIA® Camera Control Protocol (NVCCP) to send messages from NVIDIA® Tegra® to AURIX MCU and receive acknowledgement back.

For more information, search for "CCP" in NVIDIA DRIVE 5.0 Development Guide.

Enumerations

enum  nvccp_return_t {
  NVCCP_STATUS_OK = 0,
  NVCCP_STATUS_DENIED,
  NVCCP_STATUS_NOT_REGISTERED,
  NVCCP_STATUS_ALREADY_ON,
  NVCCP_STATUS_ALREADY_OFF,
  NVCCP_STATUS_SLAVE_RUNNING,
  NVCCP_STATUS_I2C_OWNERSHIP_DENIED,
  NVCCP_REQ_FILE_OP_FAIL = 1000,
  NVCCP_REQ_TIMEOUT,
  NVCCP_REQ_INVALID,
  NVCCP_REQ_DENIED,
  NVCCP_REQ_FAILED,
  NVCCP_REQ_CONNECT_ERR
}
 Defines values returned to the user library on a nvccp function call depicting the status. More...
 
enum  nvccp_cam_group_id {
  NVCCP_GROUP_A = 0x00,
  NVCCP_GROUP_B = 0x01,
  NVCCP_GROUP_C = 0x02,
  NVCCP_GROUP_D = 0x03
}
 Defines the camera group ID. More...
 
enum  nvccp_cam_id {
  NVCCP_CAM_A0 = 0x01,
  NVCCP_CAM_A1 = 0x02,
  NVCCP_CAM_A2 = 0x04,
  NVCCP_CAM_A3 = 0x08,
  NVCCP_CAM_B0 = 0x10,
  NVCCP_CAM_B1 = 0x20,
  NVCCP_CAM_B2 = 0x40,
  NVCCP_CAM_B3 = 0x80,
  NVCCP_CAM_C0 = 0x0100,
  NVCCP_CAM_C1 = 0x0200,
  NVCCP_CAM_C2 = 0x0400,
  NVCCP_CAM_C3 = 0x0800,
  NVCCP_CAM_D0 = 0x1000,
  NVCCP_CAM_D1 = 0x2000,
  NVCCP_CAM_D2 = 0x4000,
  NVCCP_CAM_D3 = 0x8000
}
 Defines the camera ID. More...
 
enum  nvccp_tegra_id {
  NVCCP_TEGRA_A = 0x41,
  NVCCP_TEGRA_B = 0x42,
  NVCCP_TEGRA_C = 0x43
}
 Defines the tegra ID. More...
 
enum  nvccp_cam_mode {
  NVCCP_CAM_MASTER = 0x01,
  NVCCP_CAM_SLAVE
}
 Defines the mode in which to request ownership (nvccp_request_ownership()) or release ownership (nvccp_release_ownership()). More...
 

Functions

nvccp_return_t nvccp_request_ownership (nvccp_cam_group_id cam_group, nvccp_cam_mode cam_master)
 Requests ownership for selected camera group. More...
 
nvccp_return_t nvccp_release_ownership (nvccp_cam_group_id cam_group, nvccp_cam_mode cam_master)
 Releases ownership for selected camera group. More...
 
nvccp_return_t nvccp_set_cam_pwr_on (nvccp_cam_group_id cam_group)
 Turns on power for all cameras in the aggregator. More...
 
nvccp_return_t nvccp_set_cam_pwr_off (nvccp_cam_group_id cam_group)
 Turns off power for all cameras in the aggregator. More...
 
nvccp_return_t nvccp_set_cam_unit_pwr_on (nvccp_cam_id cam_id)
 Turns on power for camera unit. More...
 
nvccp_return_t nvccp_set_cam_unit_pwr_off (nvccp_cam_id cam_id)
 Turns off power for camera unit. More...
 
nvccp_return_t nvccp_set_aggreg_pwr_on (nvccp_cam_group_id cam_group)
 Turns on power for camera aggregator. More...
 
nvccp_return_t nvccp_set_aggreg_pwr_off (nvccp_cam_group_id cam_group)
 Turns off power for camera aggregator. More...
 
nvccp_return_t nvccp_set_frsync_owner (nvccp_tegra_id tegra_id)
 Sets frame sync (frsync) owner. More...
 
nvccp_return_t nvccp_set_frsync_enable (nvccp_cam_group_id cam_group)
 Sets frsync enable. More...
 
nvccp_return_t nvccp_set_frsync_disable (nvccp_cam_group_id cam_group)
 Sets frsync disable. More...
 
nvccp_return_t nvccp_get_cam_unit_pwr_status (uint16_t *cam_id)
 Gets camera unit power status. More...
 
nvccp_return_t nvccp_get_aggreg_pwr_status (uint8_t *cam_group)
 Gets aggregator power status. More...
 
nvccp_return_t nvccp_get_frsync_enable_status (uint8_t *cam_group)
 Gets frsync enable status. More...
 

Enumeration Type Documentation

Defines the camera group ID.

Enumerator
NVCCP_GROUP_A 
NVCCP_GROUP_B 
NVCCP_GROUP_C 
NVCCP_GROUP_D 

Definition at line 56 of file ccp.h.

Defines the camera ID.

Enumerator
NVCCP_CAM_A0 
NVCCP_CAM_A1 
NVCCP_CAM_A2 
NVCCP_CAM_A3 
NVCCP_CAM_B0 
NVCCP_CAM_B1 
NVCCP_CAM_B2 
NVCCP_CAM_B3 
NVCCP_CAM_C0 
NVCCP_CAM_C1 
NVCCP_CAM_C2 
NVCCP_CAM_C3 
NVCCP_CAM_D0 
NVCCP_CAM_D1 
NVCCP_CAM_D2 
NVCCP_CAM_D3 

Definition at line 66 of file ccp.h.

Defines the mode in which to request ownership (nvccp_request_ownership()) or release ownership (nvccp_release_ownership()).

Enumerator
NVCCP_CAM_MASTER 
NVCCP_CAM_SLAVE 

Definition at line 102 of file ccp.h.

Defines values returned to the user library on a nvccp function call depicting the status.

Enumerator
NVCCP_STATUS_OK 
NVCCP_STATUS_DENIED 
NVCCP_STATUS_NOT_REGISTERED 
NVCCP_STATUS_ALREADY_ON 
NVCCP_STATUS_ALREADY_OFF 
NVCCP_STATUS_SLAVE_RUNNING 
NVCCP_STATUS_I2C_OWNERSHIP_DENIED 
NVCCP_REQ_FILE_OP_FAIL 
NVCCP_REQ_TIMEOUT 
NVCCP_REQ_INVALID 
NVCCP_REQ_DENIED 
NVCCP_REQ_FAILED 
NVCCP_REQ_CONNECT_ERR 

Definition at line 35 of file ccp.h.

Defines the tegra ID.

Enumerator
NVCCP_TEGRA_A 
NVCCP_TEGRA_B 
NVCCP_TEGRA_C 

Definition at line 92 of file ccp.h.

Function Documentation

nvccp_return_t nvccp_get_aggreg_pwr_status ( uint8_t *  cam_group)

Gets aggregator power status.

Parameters
cam_groupThis will be filled with the aggregator power status
Return values
nvccp_return_t
nvccp_return_t nvccp_get_cam_unit_pwr_status ( uint16_t *  cam_id)

Gets camera unit power status.

Parameters
cam_idThis will be filled with the camera power status
Return values
nvccp_return_t
nvccp_return_t nvccp_get_frsync_enable_status ( uint8_t *  cam_group)

Gets frsync enable status.

Parameters
cam_groupThis will be filled with frsync enable status
Return values
nvccp_return_t
nvccp_return_t nvccp_release_ownership ( nvccp_cam_group_id  cam_group,
nvccp_cam_mode  cam_master 
)

Releases ownership for selected camera group.

Parameters
cam_groupAggregator ID (not a bitmask)
cam_masterrequested mode of operation from nvccp_cam_mode
Return values
nvccp_return_t
nvccp_return_t nvccp_request_ownership ( nvccp_cam_group_id  cam_group,
nvccp_cam_mode  cam_master 
)

Requests ownership for selected camera group.

Parameters
cam_groupAggregator ID (not a bitmask)
cam_masterrequested mode of operation from nvccp_cam_mode
Return values
nvccp_return_t
nvccp_return_t nvccp_set_aggreg_pwr_off ( nvccp_cam_group_id  cam_group)

Turns off power for camera aggregator.

Parameters
cam_groupAggregator ID (not a bitmask)
Return values
nvccp_return_t
nvccp_return_t nvccp_set_aggreg_pwr_on ( nvccp_cam_group_id  cam_group)

Turns on power for camera aggregator.

Parameters
cam_groupAggregator ID (not a bitmask)
Return values
nvccp_return_t
nvccp_return_t nvccp_set_cam_pwr_off ( nvccp_cam_group_id  cam_group)

Turns off power for all cameras in the aggregator.

Parameters
cam_groupAggregator ID (not a bitmask)
Return values
nvccp_return_t
nvccp_return_t nvccp_set_cam_pwr_on ( nvccp_cam_group_id  cam_group)

Turns on power for all cameras in the aggregator.

Parameters
cam_groupAggregator ID (not a bitmask)
Return values
nvccp_return_t
nvccp_return_t nvccp_set_cam_unit_pwr_off ( nvccp_cam_id  cam_id)

Turns off power for camera unit.

Parameters
cam_idcamera ID (not a bitmask)
Return values
nvccp_return_t
nvccp_return_t nvccp_set_cam_unit_pwr_on ( nvccp_cam_id  cam_id)

Turns on power for camera unit.

Parameters
cam_idcamera ID (not a bitmask)
Return values
nvccp_return_t
nvccp_return_t nvccp_set_frsync_disable ( nvccp_cam_group_id  cam_group)

Sets frsync disable.

Parameters
cam_groupAggregator ID (not a bitmask)
Return values
nvccp_return_t
nvccp_return_t nvccp_set_frsync_enable ( nvccp_cam_group_id  cam_group)

Sets frsync enable.

Parameters
cam_groupAggregator ID (not a bitmask)
Return values
nvccp_return_t
nvccp_return_t nvccp_set_frsync_owner ( nvccp_tegra_id  tegra_id)

Sets frame sync (frsync) owner.

Parameters
tegra_idTegra ID
Return values
nvccp_return_t