NVIDIA DRIVE OS Linux API Reference

5.1.3.0 Release

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

Detailed Description

An ISC device represents a device that is attached or linked to the root I2C port.

Data Structures

struct  NvMediaISCAdvancedConfig
 Holds the description of the target I2C device. More...
 
struct  NvMediaISCExposureControl
 Exposure control structure. More...
 
struct  NvMediaISCWBGainControl
 Holds the white balance control structure. More...
 
struct  NvMediaISCEmbeddedDataBuffer
 Holds the embedded data buffer structure. More...
 
struct  NvMediaISCEmbeddedData
 Holds the embedded data structure. More...
 
struct  NvMediaISCModuleConfig
 Holds the ISC Module ISP configuration. More...
 
struct  NvMediaISCAttrRange
 Holds the range of sensor attribute. More...
 
struct  NvMediaISCSensorAttributes
 Holds the Sensor Attribute List Structure. More...
 
struct  NvMediaISCExposure
 Holds the sensor exposure structure. More...
 
struct  NvMediaISCWhiteBalance
 Holds the sensor white balance gain structure. More...
 
struct  NvMediaISCFrameReport
 Holds the sensor report frame report structure. More...
 
struct  NvMediaISCPWL
 Holds the sensor companding piece wise linear(PWL) structure. More...
 
struct  NvMediaISCTemperature
 Holds sensor temperature structure. More...
 
struct  NvMediaISCCRC
 Holds sensor CRC structure. More...
 
struct  NvMediaISCFrameSeqNum
 Holds sensor frame sequence number structure. More...
 
struct  NvMediaISCSensorControl
 Holds Sensor Control Structure. More...
 
struct  NvMediaISCEmbeddedDataInfo
 Holds the Sensor Embedded Data Parsed Info Structure. More...
 
struct  NvMediaISCEmbeddedDataChunk
 

Typedefs

typedef struct
NvMediaISCExposureControl 
NvMediaISCExposureControl
 Exposure control structure. More...
 
typedef struct
NvMediaISCWBGainControl 
NvMediaISCWBGainControl
 Holds the white balance control structure. More...
 
typedef struct
NvMediaISCEmbeddedData 
NvMediaISCEmbeddedData
 Holds the embedded data structure. More...
 
typedef struct
NvMediaISCModuleConfig 
NvMediaISCModuleConfig
 Holds the ISC Module ISP configuration. More...
 
typedef struct NvMediaISCAttrRange NvMediaISCAttrRange
 Holds the range of sensor attribute. More...
 
typedef struct
NvMediaISCSensorAttributes 
NvMediaISCSensorAttributes
 Holds the Sensor Attribute List Structure. More...
 
typedef struct NvMediaISCExposure NvMediaISCExposure
 Holds the sensor exposure structure. More...
 
typedef struct
NvMediaISCWhiteBalance 
NvMediaISCWhiteBalance
 Holds the sensor white balance gain structure. More...
 
typedef struct
NvMediaISCFrameReport 
NvMediaISCFrameReport
 Holds the sensor report frame report structure. More...
 
typedef struct NvMediaISCPWL NvMediaISCPWL
 Holds the sensor companding piece wise linear(PWL) structure. More...
 
typedef struct
NvMediaISCTemperature 
NvMediaISCTemperature
 Holds sensor temperature structure. More...
 
typedef struct NvMediaISCCRC NvMediaISCCRC
 Holds sensor CRC structure. More...
 
typedef struct
NvMediaISCFrameSeqNum 
NvMediaISCFrameSeqNum
 Holds sensor frame sequence number structure. More...
 
typedef struct
NvMediaISCSensorControl 
NvMediaISCSensorControl
 Holds Sensor Control Structure. More...
 
typedef struct
NvMediaISCEmbeddedDataInfo 
NvMediaISCEmbeddedDataInfo
 Holds the Sensor Embedded Data Parsed Info Structure. More...
 
typedef struct
NvMediaISCEmbeddedDataChunk 
NvMediaISCEmbeddedDataChunk
 

Enumerations

enum  NvMediaISCExposureMode {
  NVMEDIA_ISC_EXPOSURE_MODE_LONG,
  NVMEDIA_ISC_EXPOSURE_MODE_SHORT,
  NVMEDIA_ISC_EXPOSURE_MODE_VERY_SHORT,
  NVMEDIA_ISC_EXPOSURE_MODE_MAX
}
 Exposure mode. More...
 
enum  NvMediaISCPowerItems {
  NVMEDIA_ISC_PWR_AGGREGATOR,
  NVMEDIA_ISC_PWR_LINK_0,
  NVMEDIA_ISC_PWR_LINK_1,
  NVMEDIA_ISC_PWR_LINK_2,
  NVMEDIA_ISC_PWR_LINK_3
}
 ISC Power control items. More...
 

Functions

NvMediaISCDeviceNvMediaISCDeviceCreate (NvMediaISCRootDevice *rootDevice, uint32_t *deviceAddressList, uint32_t numDevices, NvMediaISCDeviceDriver *deviceDriver, NvMediaISCAdvancedConfig *advancedConfig)
 Creates an NvMediaISCDevice object. More...
 
void NvMediaISCDeviceDestroy (NvMediaISCDevice *device)
 Destroys an NvMediaISCDevice device. More...
 
NvMediaStatus NvMediaISCCheckPresence (NvMediaISCDevice *device)
 Check that the device is present. More...
 
NvMediaStatus NvMediaISCCheckLink (NvMediaISCDevice *device, uint32_t instanceNumber, uint32_t link)
 check the result of link detection of the numbered instance. More...
 
NvMediaStatus NvMediaISCSetDefaults (NvMediaISCDevice *device)
 Sets defaults for the device. More...
 
NvMediaStatus NvMediaISCSetDeviceConfig (NvMediaISCDevice *device, uint32_t enumeratedDeviceConfig)
 Sets enumerated device configuration to the device. More...
 
NvMediaStatus NvMediaISCReadParameters (NvMediaISCDevice *device, uint32_t parameterType, uint32_t parameterSize, void *parameter)
 Reads device specific parameters. More...
 
NvMediaStatus NvMediaISCWriteParameters (NvMediaISCDevice *device, uint32_t parameterType, uint32_t parameterSize, void *parameter)
 Writes device specific parameters. More...
 
NvMediaStatus NvMediaISCParseEmbeddedData (NvMediaISCDevice *device, uint32_t lineCount, uint32_t *lineLength, uint8_t *lineData[], struct NvMediaISCEmbeddedData *parsedInformation)
 Parses embedded data in the captured image. More...
 
NvMediaStatus NvMediaISCGetSensorFrameId (NvMediaISCDevice *device, uint32_t lineCount, uint32_t *lineLength, uint8_t *lineData[], uint32_t *sensorFrameId)
 Gets sensor frame ID from embedded data. More...
 
NvMediaStatus NvMediaISCGetTemperature (NvMediaISCDevice *device, float_t *temperature)
 Gets a device temperature. More...
 
NvMediaStatus NvMediaISCSetExposure (NvMediaISCDevice *device, NvMediaISCExposureControl *exposureControl)
 Sets exposure control parameters. More...
 
NvMediaStatus NvMediaISCSetWBGain (NvMediaISCDevice *device, NvMediaISCWBGainControl *wbControl)
 Sets white balance control parameters. More...
 
NvMediaStatus NvMediaISCReadRegister (NvMediaISCDevice *device, uint32_t deviceIndex, uint32_t registerAddress, uint32_t dataByteNumber, uint8_t *dataBuffer)
 Reads a device register. More...
 
NvMediaStatus NvMediaISCWriteRegister (NvMediaISCDevice *device, uint32_t deviceIndex, uint32_t registerAddress, uint32_t dataByteNumber, uint8_t *dataBuffer)
 Reads a device register. More...
 
NvMediaStatus NvMediaISCDumpRegisters (NvMediaISCDevice *device)
 Dumps all device register to the standard output. More...
 
NvMediaStatus NvMediaISCGetErrorStatus (NvMediaISCDevice *device, uint32_t parameterSize, void *parameter)
 Gets error information about an ISC device. More...
 
NvMediaStatus NvMediaISCRootDeviceRegisterCallback (NvMediaISCRootDevice *device, int32_t sigNum, void(*cbFunc)(void *), void *context)
 Registers a callback function to handle error messages. More...
 
NvMediaStatus NvMediaISCRootDeviceWaitForError (NvMediaISCRootDevice *device)
 Wait till an error condition is reported or NvMediaISCRootDeviceAbortWaitForError() is called. More...
 
NvMediaStatus NvMediaISCRootDeviceAbortWaitForError (NvMediaISCRootDevice *device)
 Abort NvMediaISCRootDeviceWaitForError() call. More...
 
NvMediaStatus NvMediaISCRootDevicePowerControl (NvMediaISCRootDevice *device, NvMediaISCPowerItems powerItem, NvMediaBool powerOn)
 Turns ON/OFF the power of a specific sub-device. More...
 
NvMediaStatus NvMediaISCGetSensorAttr (NvMediaISCDevice *device, NvMediaISCSensorAttrType type, uint32_t size, void *attribute)
 Get sensor attribute. More...
 
NvMediaStatus NvMediaISCGetModuleConfig (NvMediaISCDevice *device, NvMediaISCModuleConfig *moduleConfig)
 Gets the Module ISP configuration. More...
 
NvMediaStatus NvMediaISCSetBracketedExposure (NvMediaISCDevice *device, uint32_t numExposureControls, NvMediaISCExposureControl *exposureControls)
 Sets bracketed exposure control parameters. More...
 
NvMediaStatus NvMediaISCSetCompandingCurve (NvMediaISCDevice *device, uint32_t numPoints, NvMediaPoint *kneePoints)
 Sets the companding curve control parameters. More...
 
NvMediaStatus NvMediaISCRootDeviceGetPowerStatus (NvMediaISCRootDevice *device, NvMediaISCPowerItems powerItem, NvMediaBool *powerStatus)
 Gets the power ON/OFF status of a specific sub-device. More...
 
NvMediaStatus NvMediaISCRootDeviceEnableSync (NvMediaISCRootDevice *device, NvMediaBool enable)
 Enables or disables pulse width modulation (PWM) for the external synchronization. More...
 
NvMediaStatus NvMediaISCRootDeviceSetSyncConfig (NvMediaISCRootDevice *device, float_t freq, float_t dutyRatio)
 Sets the pulse width modulation (PWM) frequency and duty. More...
 
NvMediaStatus NvMediaISCRootDeviceGetSyncConfig (NvMediaISCRootDevice *device, float_t *freq, float_t *dutyRatio)
 Gets the pulse width modulation (PWM) frequency and duty. More...
 
NvMediaStatus NvMediaISCSetCharacterizationAttr (NvMediaISCDevice *device, NvMediaISCSensorCharAttr type, uint32_t size, void *attribute)
 Set sensor characterization attribute. More...
 
NvMediaStatus NvMediaISCGetCharacterizationAttr (NvMediaISCDevice *device, NvMediaISCSensorCharAttr type, uint32_t size, void *attribute)
 Get sensor characterization attribute. More...
 
NvMediaStatus NvMediaISCGetSensorAttributes (NvMediaISCDevice *device, NvMediaISCSensorAttributes *sensorAttr, const size_t sensorAttrStructSize)
 Get Sensor Attribute. More...
 
NvMediaStatus NvMediaISCSetSensorControls (NvMediaISCDevice *device, const NvMediaISCSensorControl *sensorControl, const size_t sensrCtrlStructSize)
 Sets sensor control parameters. More...
 
NvMediaStatus NvMediaISCParseEmbedDataInfo (NvMediaISCDevice *device, const NvMediaISCEmbeddedDataChunk *embeddedTopDataChunk, const NvMediaISCEmbeddedDataChunk *embeddedBotDataChunk, const size_t embeddedDataChunkStructSize, NvMediaISCEmbeddedDataInfo *embeddedDataInfo, const size_t dataInfoStructSize)
 Parse Sensor Embedded Data Info. More...
 
NvMediaStatus NvMediaISCSetSensorCharMode (NvMediaISCDevice *device, uint8_t expNo)
 Set sensor in characterization mode. More...
 

Typedef Documentation

Holds the range of sensor attribute.

typedef struct NvMediaISCCRC NvMediaISCCRC

Holds sensor CRC structure.

Holds the embedded data structure.

Holds the Sensor Embedded Data Parsed Info Structure.



The sensor driver can selectively activate or de-activate any of the parsed info blocks if the sensor does not support it. To activate any of the sensor info block, the sensor driver should set the info block valid flag to TRUE and populate the parsed information corresponding to the block.
In order to disable any sensor info block, set the valid flag to FALSE.
For example, if a sensor supports only exposure, white balance and CRC info, the sensor driver should activate (valid = TRUE) only sensorExpInfo, sensorWBInfo, sensorCRCInfo blocks and all the unsupported info blocks like sensorPWLInfo, sensorReportInfo, sensorTempInfo and frameSeqNumInfo should be disabled (valid = FALSE).

Holds the sensor exposure structure.

Exposure control structure.

Holds the sensor report frame report structure.

Holds sensor frame sequence number structure.

Holds the ISC Module ISP configuration.

typedef struct NvMediaISCPWL NvMediaISCPWL

Holds the sensor companding piece wise linear(PWL) structure.

Holds the Sensor Attribute List Structure.

Holds Sensor Control Structure.

Note
In order to activate any sensor control block, corresponding valid flag should be set to TRUE and control settings, to be set, should be populated. In order to disable any sensor control block, corresponding valid flag should be set to FALSE. For example, in order to activate white balance control block, the user should set wbValid flag in wbControl structure to TRUE and populate white balance settings to be programmed. In order to disable white balance control block, wbValid flag should be set to FALSE.

Holds sensor temperature structure.

Holds the white balance control structure.

Holds the sensor white balance gain structure.

Enumeration Type Documentation

Exposure mode.

Note
This enum will not be supported in the future release.
Enumerator
NVMEDIA_ISC_EXPOSURE_MODE_LONG 

Long exposure mode.

NVMEDIA_ISC_EXPOSURE_MODE_SHORT 

Short exposure mode.

NVMEDIA_ISC_EXPOSURE_MODE_VERY_SHORT 

Very short exposure mode.

NVMEDIA_ISC_EXPOSURE_MODE_MAX 

Exposure mode count.

Definition at line 1345 of file nvmedia_isc.h.

ISC Power control items.

Enumerator
NVMEDIA_ISC_PWR_AGGREGATOR 

Aggregator Power.

NVMEDIA_ISC_PWR_LINK_0 

LINK 0 Power.

NVMEDIA_ISC_PWR_LINK_1 

LINK 1 PWR.

NVMEDIA_ISC_PWR_LINK_2 

LINK 2 PWR.

NVMEDIA_ISC_PWR_LINK_3 

LINK 3 PWR.

Definition at line 1595 of file nvmedia_isc.h.

Function Documentation

NvMediaStatus NvMediaISCCheckLink ( NvMediaISCDevice device,
uint32_t  instanceNumber,
uint32_t  link 
)

check the result of link detection of the numbered instance.

Parameters
[in]deviceThe device to use.
[in]instanceNumberThe attached device's instance number.
[in]linkThe specific link defined by the device (optional).
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NvMediaStatus NvMediaISCCheckPresence ( NvMediaISCDevice device)

Check that the device is present.

Parameters
[in]deviceThe device to use.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NvMediaISCDevice* NvMediaISCDeviceCreate ( NvMediaISCRootDevice rootDevice,
uint32_t *  deviceAddressList,
uint32_t  numDevices,
NvMediaISCDeviceDriver deviceDriver,
NvMediaISCAdvancedConfig advancedConfig 
)

Creates an NvMediaISCDevice object.

Parameters
[in]rootDeviceA pointer to the root device that you created with NvMediaISCRootDeviceCreate().
[in]deviceAddressListThe list of I2C device addresses corresponding to this NvMediaISCDevice object
[in]numDevicesThe number of I2C addresses in the above list
[in]deviceDriverThe driver structure that defines the behavior of the device.
[in]advancedConfigAdvanced configuration.
Returns
device The new device's handle or NULL if unsuccessful.
void NvMediaISCDeviceDestroy ( NvMediaISCDevice device)

Destroys an NvMediaISCDevice device.

Parameters
[in]deviceThe device to destroy.
NvMediaStatus NvMediaISCDumpRegisters ( NvMediaISCDevice device)

Dumps all device register to the standard output.

Parameters
[in]deviceThe device to use.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NvMediaStatus NvMediaISCGetCharacterizationAttr ( NvMediaISCDevice device,
NvMediaISCSensorCharAttr  type,
uint32_t  size,
void *  attribute 
)

Get sensor characterization attribute.

Parameters
[in]deviceThe device to use.
[in]typeSensor characterization attribute type.
[in]sizeSize of the attribute.
[out]attributeSensor characterization attribute value.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
Note
This API will not be supported in the future release.
NvMediaStatus NvMediaISCGetErrorStatus ( NvMediaISCDevice device,
uint32_t  parameterSize,
void *  parameter 
)

Gets error information about an ISC device.

Parameters
[in]deviceThe device to use.
[in]parameterSizeSize of the error information structure
[out]parameterDevice specific error information structure
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NvMediaStatus NvMediaISCGetModuleConfig ( NvMediaISCDevice device,
NvMediaISCModuleConfig moduleConfig 
)

Gets the Module ISP configuration.

Parameters
[in]deviceA pointer to the device to use.
[out]moduleConfigA pointer to the module ISP configuration.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NvMediaStatus NvMediaISCGetSensorAttr ( NvMediaISCDevice device,
NvMediaISCSensorAttrType  type,
uint32_t  size,
void *  attribute 
)

Get sensor attribute.

This API will not be supported in the future release. It is recommended to use the new API NvMediaISCGetSensorAttributes

Parameters
[in]deviceThe device to use.
[in]typeSensor attribute type.
[in]sizeSize of the attribute.
[out]attributeSensor attribute value.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NvMediaStatus NvMediaISCGetSensorAttributes ( NvMediaISCDevice device,
NvMediaISCSensorAttributes sensorAttr,
const size_t  sensorAttrStructSize 
)

Get Sensor Attribute.

Description
NvMediaISCGetSensorAttributes API provides the user information about different sensor static properties like sensor name, exposure-gain ranges supported, number of active exposures.
Parameters
[in]deviceA pointer to the device to use.
[out]sensorAttrA pointer to NvMediaISCSensorAttributes structure.
[in]sensorAttrStructSizeSize of the NvMediaISCSensorAttributes structure.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NvMediaStatus NvMediaISCGetSensorFrameId ( NvMediaISCDevice device,
uint32_t  lineCount,
uint32_t *  lineLength,
uint8_t *  lineData[],
uint32_t *  sensorFrameId 
)

Gets sensor frame ID from embedded data.

Parameters
[in]deviceThe device to use.
[in]lineCountNumber of lines to parse.
[in]lineLengthLine length of each line in bytes.
[in]lineDataArray of pointers containing the line data.
[out]sensorFrameIdThe sensor frame ID. This information is device-specific.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
Note
This API will not be supported in the future release.
NvMediaStatus NvMediaISCGetTemperature ( NvMediaISCDevice device,
float_t *  temperature 
)

Gets a device temperature.

It is recommended to use the new API NvMediaISCParseEmbedDataInfo

Parameters
[in]deviceThe device to use.
[out]temperatureThe device's temperature in Celsius.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
Note
This API will not be supported in future release.
NvMediaStatus NvMediaISCParseEmbedDataInfo ( NvMediaISCDevice device,
const NvMediaISCEmbeddedDataChunk embeddedTopDataChunk,
const NvMediaISCEmbeddedDataChunk embeddedBotDataChunk,
const size_t  embeddedDataChunkStructSize,
NvMediaISCEmbeddedDataInfo embeddedDataInfo,
const size_t  dataInfoStructSize 
)

Parse Sensor Embedded Data Info.

Description:
NvMediaISCParseEmbedDataInfo API parses the sensor frame embedded data and provides sensor image settings information for the captured frame. Sensor image settings like exposure, gain, white balance information applied to the frame can be retrieved using this API.
Parameters
[in]deviceA pointer to the device to use.
[in]embeddedTopDataChunkA pointer to NvMediaISCEmbeddedDataChunk structure.
[in]embeddedBotDataChunkA pointer to NvMediaISCEmbeddedDataChunk structure.
[in]embeddedDataChunkStructSizeSize of NvMediaISCEmbeddedDataChunk structure in bytes.
[out]embeddedDataInfoA pointer to NvMediaISCEmbeddedDataInfo structure.
[in]dataInfoStructSizeSize of NvMediaISCEmbeddedDataInfo structure in bytes.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NvMediaStatus NvMediaISCParseEmbeddedData ( NvMediaISCDevice device,
uint32_t  lineCount,
uint32_t *  lineLength,
uint8_t *  lineData[],
struct NvMediaISCEmbeddedData parsedInformation 
)

Parses embedded data in the captured image.

Parameters
[in]deviceThe device to use.
[in]lineCountNumber of lines to parse.
[in]lineLengthLine length of each line in bytes.
[in]lineDataArray of pointers containing the line data.
[out]parsedInformationPointer to the parsed information structure. This information is device specific.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
Note

This API will not be supported in the future release. It is recommended to use the new API NvMediaISCParseEmbedDataInfo
NvMediaStatus NvMediaISCReadParameters ( NvMediaISCDevice device,
uint32_t  parameterType,
uint32_t  parameterSize,
void *  parameter 
)

Reads device specific parameters.

This read is implemented in the device driver and the device driver's header file contains the definitions for the parameters.

Parameters
[in]deviceThe device to use.
[in]parameterTypeDevice specific parameter type.
[in]parameterSizeSize of the parameter structure
[out]parameterDevice specific parameter
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NvMediaStatus NvMediaISCReadRegister ( NvMediaISCDevice device,
uint32_t  deviceIndex,
uint32_t  registerAddress,
uint32_t  dataByteNumber,
uint8_t *  dataBuffer 
)

Reads a device register.

Parameters
[in]deviceThe device to use.
[in]deviceIndexThe index of the device address passed during NvMediaISCDeviceCreate.
[in]registerAddressThe register address to read from.
[in]dataByteNumberNumber of bytes to read.
[in]dataBufferThe data buffer to read to.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NvMediaStatus NvMediaISCRootDeviceAbortWaitForError ( NvMediaISCRootDevice device)

Abort NvMediaISCRootDeviceWaitForError() call.

Parameters
[in]deviceThe root device to use.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NvMediaStatus NvMediaISCRootDeviceEnableSync ( NvMediaISCRootDevice device,
NvMediaBool  enable 
)

Enables or disables pulse width modulation (PWM) for the external synchronization.

Parameters
[in]deviceThe root device to use.
[in]enableThe PWM state. Possible values are:
NVMEDIA_TRUE PWM is enabled.
NVMEDIA_FALSE PWM is disabled.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NVMEDIA_STATUS_OK
NVMEDIA_STATUS_BAD_PARAMETER if any of the input parameter is NULL.
NVMEDIA_STATUS_ERROR if other error occurred.
NvMediaStatus NvMediaISCRootDeviceGetPowerStatus ( NvMediaISCRootDevice device,
NvMediaISCPowerItems  powerItem,
NvMediaBool powerStatus 
)

Gets the power ON/OFF status of a specific sub-device.

Parameters
[in]deviceThe root device to use.
[in]powerItemThe power item to get power status in the root device.
[in]powerStatusThe power state of the power item provided Possible values are:
NVMEDIA_TRUE power is on
NVMEDIA_FALSE power is off
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NVMEDIA_STATUS_OK
NVMEDIA_STATUS_BAD_PARAMETER if any of the input parameter is NULL.
NVMEDIA_STATUS_NOT_SUPPORTED if the functionality is not supported by the device driver.
NVMEDIA_STATUS_ERROR if any other error occurred.
NvMediaStatus NvMediaISCRootDeviceGetSyncConfig ( NvMediaISCRootDevice device,
float_t *  freq,
float_t *  dutyRatio 
)

Gets the pulse width modulation (PWM) frequency and duty.

Parameters
[in]deviceThe root device to use.
[out]freqPWM frequency.
[out]dutyRatioHigh level ratio in one PWM period.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NVMEDIA_STATUS_OK
NVMEDIA_STATUS_BAD_PARAMETER if any of the input parameter is NULL.
NVMEDIA_STATUS_NOT_SUPPORTED if the functionality is not supported.
NVMEDIA_STATUS_ERROR if other error occurred.
NvMediaStatus NvMediaISCRootDevicePowerControl ( NvMediaISCRootDevice device,
NvMediaISCPowerItems  powerItem,
NvMediaBool  powerOn 
)

Turns ON/OFF the power of a specific sub-device.

Parameters
[in]deviceThe root device to use.
[in]powerItemThe power item to control the power in the root device.
[in]powerOnThe power state after this call. Possible values are:
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NvMediaStatus NvMediaISCRootDeviceRegisterCallback ( NvMediaISCRootDevice device,
int32_t  sigNum,
void(*)(void *)  cbFunc,
void *  context 
)

Registers a callback function to handle error messages.

Parameters
[in]deviceThe root device to use.
[in]sigNumThe signal number to use for notifying errors.
[in]cbFuncThe callback function to handle the signal.
[in]contextCan be used to store local context.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NvMediaStatus NvMediaISCRootDeviceSetSyncConfig ( NvMediaISCRootDevice device,
float_t  freq,
float_t  dutyRatio 
)

Sets the pulse width modulation (PWM) frequency and duty.

Parameters
[in]deviceThe root device to use.
[in]freqPWM frequency.
[in]dutyRatioHigh level ratio in one PWM period.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NVMEDIA_STATUS_OK
NVMEDIA_STATUS_BAD_PARAMETER if any of the input parameter is NULL.
NVMEDIA_STATUS_ERROR if other error occurred.
NvMediaStatus NvMediaISCRootDeviceWaitForError ( NvMediaISCRootDevice device)

Wait till an error condition is reported or NvMediaISCRootDeviceAbortWaitForError() is called.

Parameters
[in]deviceThe root device to use.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NvMediaStatus NvMediaISCSetBracketedExposure ( NvMediaISCDevice device,
uint32_t  numExposureControls,
NvMediaISCExposureControl exposureControls 
)

Sets bracketed exposure control parameters.

Parameters
[in]deviceA pointer to the device to use.
[in]numExposureControlsNumber of entries in exposureControls array
[in]exposureControlsAn array of exposure control parameters.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
Note

This API will not be supported in the future release. It is recommended to use the new API NvMediaISCSetSensorControls
NvMediaStatus NvMediaISCSetCharacterizationAttr ( NvMediaISCDevice device,
NvMediaISCSensorCharAttr  type,
uint32_t  size,
void *  attribute 
)

Set sensor characterization attribute.

Parameters
[in]deviceThe device to use.
[in]typeSensor characterization attribute type.
[in]sizeSize of the attribute.
[out]attributeSensor characterization attribute value.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
Note

This API will not be supported in the future release. It is recommended to use the new API NvMediaISCSetSensorCharMode
NvMediaStatus NvMediaISCSetCompandingCurve ( NvMediaISCDevice device,
uint32_t  numPoints,
NvMediaPoint kneePoints 
)

Sets the companding curve control parameters.

Parameters
[in]deviceA pointer to the device to use.
[in]numPointsNumber of points in the kneePoints array
[in]kneePointsAn array of points
Returns
NvMediaStatus The completion status of the operation. Possible values are:
Note

This API will not be supported in the future release.
NvMediaStatus NvMediaISCSetDefaults ( NvMediaISCDevice device)

Sets defaults for the device.

Parameters
[in]deviceThe device to use.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NvMediaStatus NvMediaISCSetDeviceConfig ( NvMediaISCDevice device,
uint32_t  enumeratedDeviceConfig 
)

Sets enumerated device configuration to the device.

This configuration is device specific and it is defined in the device driver's header file.

Parameters
[in]deviceThe device to use.
[in]enumeratedDeviceConfigConfiguration number.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NvMediaStatus NvMediaISCSetExposure ( NvMediaISCDevice device,
NvMediaISCExposureControl exposureControl 
)

Sets exposure control parameters.

Parameters
[in]deviceA pointer to the device to use.
[out]exposureControlA pointer to exposure control parameters.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
Note

This API will not be supported in the future release. It is recommended to use the new API NvMediaISCSetSensorControls
NvMediaStatus NvMediaISCSetSensorCharMode ( NvMediaISCDevice device,
uint8_t  expNo 
)

Set sensor in characterization mode.

Description
NvMediaISCSetSensorCharMode API provides ability for the user to configure the sensor for characterization. Sensor characterization provides optimal parameters, corresponding to sensor physical and functional characteristics, for image processing.
Sensor characterization for High Dynamic Range (HDR) sensors with multiple exposures (T1, T2, … , Tn ) involves characterizing induvial exposures separately, if required by the sensor. This API provides the ability to configure sensor to capture each exposure separately, if required by sensor characterization. This function re-configures the sensor i.e. changes the sensor static attributes like numActiveExposures, sensorExpRange, sensorGainRange and hence, should be called during sensor initialization time. In order to characterize the sensor exposure number ‘n’, where n = {1,2,3, … , N} for N-exposure HDR sensor, the input parameter ‘expNo’ should be set to ‘n’.
For a non-HDR sensor, the input parameter ‘expNo’ should always be set to ‘1’.
Parameters
[in]deviceA pointer to the sensor control device in use.
[in]expNoSensor exposure number to be used for characterization. Valid range for expNo : [0, (NVMEDIA_ISC_MAX_EXPOSURES-1)] For Non-HDR sensor, this should be set to '1'
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NvMediaStatus NvMediaISCSetSensorControls ( NvMediaISCDevice device,
const NvMediaISCSensorControl sensorControl,
const size_t  sensrCtrlStructSize 
)

Sets sensor control parameters.

Description:
NvMediaISCSetSensorControls API provides user the ability to control sensor image settings, like exposure time, sensor gain and white balance gain.
All the parameters provided to this API will be applied together at a frame boundary through ISC ‘group hold’ functionality, if supported by the sensor.
Note
This API invokes device driver function held by 'SensorControls' function pointer.
Parameters
[in]deviceA pointer to the sensor control device in use.
[in]sensorControlA pointer to NvMediaISCSensorControl structure.
[in]sensrCtrlStructSizeSize of the NvMediaISCSensorControl structure.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NvMediaStatus NvMediaISCSetWBGain ( NvMediaISCDevice device,
NvMediaISCWBGainControl wbControl 
)

Sets white balance control parameters.

Parameters
[in]deviceThe device to use.
[out]wbControlWhite Balance control parameters.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
Note

This API will not be supported in the future release. It is recommended to use the new API NvMediaISCSetSensorControls
NvMediaStatus NvMediaISCWriteParameters ( NvMediaISCDevice device,
uint32_t  parameterType,
uint32_t  parameterSize,
void *  parameter 
)

Writes device specific parameters.

This write is implemented in the device driver and the device driver's header file contains the definitions for the parameters.

Parameters
[in]deviceThe device to use.
[in]parameterTypeDevice specific parameter type.
[in]parameterSizeSize of the parameter structure
[in]parameterDevice specific parameter.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NvMediaStatus NvMediaISCWriteRegister ( NvMediaISCDevice device,
uint32_t  deviceIndex,
uint32_t  registerAddress,
uint32_t  dataByteNumber,
uint8_t *  dataBuffer 
)

Reads a device register.

Parameters
[in]deviceThe device to use.
[in]deviceIndexThe index of the device address passed during NvMediaISCDeviceCreate.
[in]registerAddressThe register address to write to.
[in]dataByteNumberNumber of bytes to write.
[in]dataBufferThe data buffer to be written to the register.
Returns
NvMediaStatus The completion status of the operation. Possible values are: