NVIDIA Media Interface: Image Sensor Control (ISC)
This file contains the Image Sensor Control API.
Definition in file nvmedia_isc.h.
Go to the source code of this file.
Data Structures | |
| struct | NvMediaISCDevice |
| Holds the handle for an NvMediaISCDevice object. More... | |
| struct | NvMediaISCDeviceDriver |
| Holds device driver data. More... | |
| struct | NvMediaISCAdvancedConfig |
| Holds the description of the target I2C device. More... | |
| struct | NvMediaISCAttrRange |
| Holds the range of a sensor attribute. More... | |
| struct | NvMediaISCSensorAttributes |
| Holds the sensor attributes. More... | |
| struct | NvMediaISCExposure |
| Holds sensor exposure information. 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 piecewise linear (PWL) structure. More... | |
| struct | NvMediaISCTemperature |
| Holds the sensor temperature structure. More... | |
| struct | NvMediaISCCRC |
| Holds the sensor CRC structure. More... | |
| struct | NvMediaISCFrameSeqNum |
| Holds the sensor frame sequence number structure. More... | |
| struct | NvMediaISCSensorControl |
| Holds the sensor control structure. More... | |
| struct | NvMediaISCEmbeddedDataInfo |
| Holds the sensor embedded data parsed info structure. More... | |
| struct | NvMediaISCEmbeddedDataChunk |
| struct | NvMediaISCModuleConfig |
| Holds the ISC Module ISP configuration. More... | |
| struct | NvMediaISCExposureControl |
| Holds exposure control information. 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... | |
Macros | |
| #define | NVMEDIA_ISC_VERSION_MAJOR 3 |
| Major version number. More... | |
| #define | NVMEDIA_ISC_VERSION_MINOR 2 |
| Minor Version number. More... | |
| #define | NVMEDIA_ISC_SIMULATOR_ADDRESS 0xFF1u |
| Device address to use for an ISC simulator device. More... | |
| #define | RDEV_CFG_I2C_BITS 8 |
| Bits reserved for the I2C bus number in ISC_RDEV_CFG(csi, i2c). More... | |
| #define | RDEV_CFG_CSI_BITS (RDEV_CFG_I2C_BITS + 8) |
| Bits reserved for the CSI port in ISC_SLV_RDEV_CFG(csi, i2c). More... | |
| #define | RDEV_CFG_SLV_BIT (RDEV_CFG_CSI_BITS + 1) |
| Bit reserved for the slave mode flag in ISC_SLV_RDEV_CFG(csi, i2c). More... | |
| #define | ISC_RDEV_CFG(csi, i2c) (((uint32_t)(csi) << RDEV_CFG_I2C_BITS) | (i2c)) |
| Macro to create root device configuration with the connected CSI port and I2C bus. More... | |
| #define | ISC_RDEV_CFG_EX(csi, i2c, disPwrCtrl) |
| Extended macro to create root device configuration with the connected CSI port, I2C bus, and an option to disable power control from root device. More... | |
| #define | ISC_SLV_RDEV_CFG(csi, i2c) ((i2c) | ((uint32_t)(csi) << RDEV_CFG_I2C_BITS) | ((uint32_t)(1u) << RDEV_CFG_CSI_BITS)) |
| Macro to create a slave root device configuration with the connected CSI port and I2C bus when the application is run on a slave SoC. More... | |
| #define | ADV_CONFIG_INIT(cfg, ctx) |
| Macro to initialize an NvMediaISCAdvancedConfig object. More... | |
| #define | NVMEDIA_ISC_MAX_EXPOSURES (8u) |
| Maximum number of exposures. More... | |
| #define | NVM_ISC_MAX_COLOR_COMPONENT (4u) |
| Maximum number of color components. More... | |
| #define | NVMEDIA_ISC_MAX_SENSOR_CONTEXTS (4u) |
| Maximum number of sensor contexts. More... | |
| #define | NVMEDIA_ISC_MAX_PWL_KNEEPOINTS (64u) |
| Maximum number of sensor companding piecewise linear (PWL) curve knee points. More... | |
| #define | NVMEDIA_ISC_MAX_FRAME_REPORT_BYTES (4u) |
| Maximum number of frame report bytes. More... | |
| #define | NVMEDIA_ISC_MAX_NUM_TEMPERATURES (4u) |
| Maximum number of sensor temperature values. More... | |
| #define | NVMEDIA_ISC_MAX_SENSOR_NAME_LENGTH (32u) |
| Maximum possible length of sensor name. More... | |
| #define | NVMEDIA_ISC_MAX_FUSE_ID_LENGTH (32u) |
| Maximum possible length of sensor fuse id. More... | |
Typedefs | |
| typedef void | NvMediaISCRootDevice |
| An opaque handle for an NvMediaISCRootDevice object. More... | |
| typedef struct NvMediaISCAttrRange | NvMediaISCAttrRange |
| Holds the range of a sensor attribute. More... | |
| typedef struct NvMediaISCSensorAttributes | NvMediaISCSensorAttributes |
| Holds the sensor attributes. More... | |
| typedef struct NvMediaISCExposure | NvMediaISCExposure |
| Holds sensor exposure information. 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 piecewise linear (PWL) structure. More... | |
| typedef struct NvMediaISCTemperature | NvMediaISCTemperature |
| Holds the sensor temperature structure. More... | |
| typedef struct NvMediaISCCRC | NvMediaISCCRC |
| Holds the sensor CRC structure. More... | |
| typedef struct NvMediaISCFrameSeqNum | NvMediaISCFrameSeqNum |
| Holds the sensor frame sequence number structure. More... | |
| typedef struct NvMediaISCSensorControl | NvMediaISCSensorControl |
| Holds the sensor control structure. More... | |
| typedef struct NvMediaISCEmbeddedDataInfo | NvMediaISCEmbeddedDataInfo |
| Holds the sensor embedded data parsed info structure. More... | |
| typedef struct NvMediaISCEmbeddedDataChunk | NvMediaISCEmbeddedDataChunk |
| typedef struct NvMediaISCModuleConfig | NvMediaISCModuleConfig |
| Holds the ISC Module ISP configuration. More... | |
| typedef struct NvMediaISCExposureControl | NvMediaISCExposureControl |
| Holds exposure control information. More... | |
| typedef struct NvMediaISCWBGainControl | NvMediaISCWBGainControl |
| Holds the white balance control structure. More... | |
| typedef struct NvMediaISCEmbeddedData | NvMediaISCEmbeddedData |
| Holds the embedded data structure. More... | |
Functions | |
| NvMediaStatus | NvMediaISCGetVersion (NvMediaVersion *version) |
| Gets the version compatibility for the NvMedia ISC library. More... | |
| NvMediaISCRootDevice * | NvMediaISCRootDeviceCreate (uint32_t portCfg) |
| Creates an NvMediaISCRootDevice object. More... | |
| void | NvMediaISCRootDeviceDestroy (NvMediaISCRootDevice *device) |
| Destroys an NvMediaISCRootDevice object. More... | |
| NvMediaStatus | NvMediaISCRootDeviceWaitForError (NvMediaISCRootDevice *device) |
| Waits until an error condition is reported or NvMediaISCRootDeviceAbortWaitForError() is called. More... | |
| NvMediaStatus | NvMediaISCRootDeviceAbortWaitForError (NvMediaISCRootDevice *device) |
| Aborts a call to NvMediaISCRootDeviceWaitForError(). More... | |
| NvMediaISCDevice * | NvMediaISCDeviceCreate (NvMediaISCRootDevice *rootDevice, uint32_t *deviceAddressList, uint32_t numDevices, NvMediaISCDeviceDriver *deviceDriver, NvMediaISCAdvancedConfig *advancedConfig) |
| Creates an NvMediaISCDevice object. More... | |
| void | NvMediaISCDeviceDestroy (NvMediaISCDevice *device) |
| Destroys the object that describes an ISC device. More... | |
| NvMediaStatus | NvMediaISCDeviceRead (NvMediaISCDevice *device, uint32_t deviceIndex, uint32_t regLength, uint8_t *regData, uint32_t dataLength, uint8_t *data) |
| Performs a read operation over I2C. More... | |
| NvMediaStatus | NvMediaISCDeviceWrite (NvMediaISCDevice *device, uint32_t deviceIndex, uint32_t dataLength, const uint8_t *data) |
| Performs a write operation over I2C. More... | |
| NvMediaStatus | NvMediaISCGetSensorAttributes (NvMediaISCDevice *device, NvMediaISCSensorAttributes *sensorAttr, const size_t sensorAttrStructSize) |
| Gets the sensor attributes. 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) |
| Parses sensor embedded data info and provides sensor image settings information for the captured frame. More... | |
| NvMediaStatus | NvMediaISCRootDevicePowerControl (NvMediaISCRootDevice *device, NvMediaISCPowerItems powerItem, NvMediaBool powerOn) |
| Turns ON/OFF the power of a specific sub-device. 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 | NvMediaISCSetSensorCharMode (NvMediaISCDevice *device, uint8_t expNo) |
| Set sensor in characterization mode. More... | |
| NvMediaStatus | NvMediaISCGetModuleConfig (NvMediaISCDevice *device, NvMediaISCModuleConfig *moduleConfig) |
| Gets the Module ISP configuration. More... | |