--- drivers/media/nomadik_mm/sva/nomadik_sva_vpip.c | 2910 +++++++++++++++++++++--- drivers/media/video/v4l2-nomadik.c | 2 2 files changed, 2644 insertions(+), 268 deletions(-) --- linux-2.6.20.orig/drivers/media/nomadik_mm/sva/nomadik_sva_vpip.c +++ linux-2.6.20/drivers/media/nomadik_mm/sva/nomadik_sva_vpip.c @@ -36,10 +36,11 @@ #include #include "nomadik_sva_vpip.h" #define VPIP_DEFAULT_LOG_LEVEL 4 +//#if CAM_IQ_TUNING 1 int vpip_debug = VPIP_DEFAULT_LOG_LEVEL; module_param(vpip_debug, int, 0644); MODULE_PARM_DESC(vpip_debug,"Debug level for VPIP messages"); @@ -788,79 +789,106 @@ IRP_ASSERT(irp_write_packet(srv_open, return ret_val; }EXPORT_SYMBOL(write_pages_exposure); - //unsigned char vpip_def_param[800][MAX_PARAM_IN_LINE][MAX_CHAR_IN_PARAM]= + + struct nomadik_vpip_param vpip_default_params[2700]= { + + { DeviceParameters_uwDeviceId_LSByte , 0x0002, 0x0000 }, { DeviceParameters_uwDeviceId_MSByte , 0x0001, 0x0000 }, { DeviceParameters_bFirmwareVersionMajor , 0x0004, 0x0000 }, { DeviceParameters_bFirmwareVersionMinor , 0x0006, 0x0000 }, { DeviceParameters_bHardwareVersionMajor , 0x0008, 0x0000 }, { DeviceParameters_bHardwareVersionMinor , 0x000a, 0x0000 }, -{ ModeManagerControl_bUserCommand , 0x0080, 0x0000 }, + +// page "ModeManagerControl" +// + { ModeManagerControl_bUserCommand , 0x0080,0x0000},//to be hardcoded { ModeManagerControl_fTestStateMachine , 0x0082, 0x0000 }, { ModeManagerControl_fForceTestState , 0x0084, 0x0000 }, { ModeManagerControl_bManualNextState , 0x0086, 0x0000 }, { ModeManagerControl_bTestCoin , 0x0088, 0x0000 }, + +// page "ModeManagerStatus" [read only] +// { ModeManagerStatus_bThisLoLevelState , 0x0100, 0x0000 }, { ModeManagerStatus_bNextLoLevelState , 0x0102, 0x0000 }, { ModeManagerStatus_bHiLevelState , 0x0104, 0x0000 }, { ModeManagerStatus_bCycles , 0x0106, 0x0000 }, { ModeManagerStatus_fModeStaticSetupsChanged , 0x0108, 0x0000 }, { ModeManagerStatus_bTestCoin , 0x010a, 0x0000 }, { ModeManagerStatus_fCycleForTest , 0x010c, 0x0000 }, { ModeManagerStatus_bNumberOfFramesStreamed , 0x010e, 0x0000 }, { ModeManagerStatus_bPrevFrameCountForExposure , 0x0110, 0x0000 }, -{ RunModeControl_fMeteringOn , 0x0180, 0x0001 }, + +// page "RunModeControl" +// + { RunModeControl_fMeteringOn , 0x0180,0x1}, { RunModeControl_fExitOnStable , 0x0182, 0x0000 }, -{ RunModeControl_bStreamLength , 0x0184, 0x0000 }, + { RunModeControl_bStreamLength , 0x0184,0x00}, { RunModeControl_fMeterBeforeStreaming , 0x0186, 0x0000 }, { RunModeControl_fChkForAF_Stability , 0x0188, 0x0000 }, { RunModeControl_fChkForExposure_Stability , 0x018a, 0x0000 }, { RunModeControl_fChkForWhiteBalance_Stability , 0x018c, 0x0000 }, -{ ModeSetupBankSelector_bRequiredModeSetupBank , 0x0200, 0x0000 }, -{ PipeSetupBankSelector_bRequiredPipe0SetupBank , 0x0280, 0x0000 }, + +// page "ModeSetupBankSelector" [mode static] +// + { ModeSetupBankSelector_bRequiredModeSetupBank , 0x0200,0x00}, + +// page "PipeSetupBankSelector" [mode static] +// + { PipeSetupBankSelector_bRequiredPipe0SetupBank , 0x0280, 0x00}, + +// page "ModeSetupBank0" [mode static] +// { ModeSetupBank0_uwInputImageSize_X_LSByte , 0x0302, 0x0000 }, { ModeSetupBank0_uwInputImageSize_X_MSByte , 0x0301, 0x0648 }, { ModeSetupBank0_uwInputImageSize_Y_LSByte , 0x0306, 0x0000 }, -{ ModeSetupBank0_uwInputImageSize_Y_MSByte , 0x0305, 0x04b8 }, + { ModeSetupBank0_uwInputImageSize_Y_MSByte , 0x0305,0x04B8}, { ModeSetupBank0_uwMaxImageSize_X_LSByte , 0x030a, 0x0000 }, -{ ModeSetupBank0_uwMaxImageSize_X_MSByte , 0x0309, 0x0640 }, + { ModeSetupBank0_uwMaxImageSize_X_MSByte , 0x0309,0x640}, { ModeSetupBank0_uwMaxImageSize_Y_LSByte , 0x030e, 0x0000 }, -{ ModeSetupBank0_uwMaxImageSize_Y_MSByte , 0x030d, 0x04b0 }, + { ModeSetupBank0_uwMaxImageSize_Y_MSByte , 0x030d,0x4b0}, { ModeSetupBank0_uwMinImageSize_X_LSByte , 0x0312, 0x0000 }, -{ ModeSetupBank0_uwMinImageSize_X_MSByte , 0x0311, 0x0058 }, + { ModeSetupBank0_uwMinImageSize_X_MSByte , 0x0311,0x58}, { ModeSetupBank0_uwMinImageSize_Y_LSByte , 0x0316, 0x0000 }, -{ ModeSetupBank0_uwMinImageSize_Y_MSByte , 0x0315, 0x0048 }, -{ ModeSetupBank0_bActiveSensor , 0x0318, 0x0002 }, + { ModeSetupBank0_uwMinImageSize_Y_MSByte , 0x0315,0x48}, + { ModeSetupBank0_bActiveSensor , 0x0318,0x2},// tobe hard coded { ModeSetupBank0_fLowPowerStreaming , 0x031a, 0x0000 }, { ModeSetupBank0_bTestMode , 0x031c, 0x0000 }, -{ ModeSetupBank0_bNumberOfStatusLines , 0x031e, 0x0003 }, -{ ModeSetupBank0_bNumberOfDarkLines , 0x0320, 0x0002 }, -{ ModeSetupBank0_bNumberOfBlackLines , 0x0322, 0x0004 }, + { ModeSetupBank0_bNumberOfStatusLines , 0x031e,0x03}, + { ModeSetupBank0_bNumberOfDarkLines , 0x0320,0x02}, + { ModeSetupBank0_bNumberOfBlackLines , 0x0322,0x04}, { ModeSetupBank0_uwNumberOfInterLinePixelClocks_LSByte , 0x0326, 0x0000 }, -{ ModeSetupBank0_uwNumberOfInterLinePixelClocks_MSByte , 0x0325, 0x0011 }, + { ModeSetupBank0_uwNumberOfInterLinePixelClocks_MSByte , 0x0325, 0x11}, { ModeSetupBank0_uwNumberOfInterFrameLines_LSByte , 0x032a, 0x0000 }, { ModeSetupBank0_uwNumberOfInterFrameLines_MSByte , 0x0329, 0x0000 }, -{ ModeSetupBank0_bNumberOfDummyColumns , 0x032c, 0x0008 }, -{ ModeSetupBank0_bInputImageSource , 0x032e, 0x0000 }, -{ ModeSetupBank0_bOutputImageDestination , 0x0330, 0x0001 }, + { ModeSetupBank0_bNumberOfDummyColumns , 0x032c ,0x08}, + { ModeSetupBank0_bInputImageSource , 0x032e ,0x00}, + { ModeSetupBank0_bOutputImageDestination , 0x0330 ,0x01}, + +// page "PipeSetupBankA" [mode static] +// { PipeSetupBankA_uwPipeOutputSize_X_LSByte , 0x0382, 0x0000 }, -{ PipeSetupBankA_uwPipeOutputSize_X_MSByte , 0x0381, 0x0800 }, + { PipeSetupBankA_uwPipeOutputSize_X_MSByte , 0x0381,0x800}, { PipeSetupBankA_uwPipeOutputSize_Y_LSByte , 0x0386, 0x0000 }, -{ PipeSetupBankA_uwPipeOutputSize_Y_MSByte , 0x0385, 0x0600 }, -{ PipeSetupBankA_bPipeOutputFormat , 0x0388, 0x0003 }, -{ PipeSetupBankA_bPipeStreamLength , 0x038a, 0x0000 }, -{ PipeSetupBankA_fTogglePixValid , 0x038c, 0x0000 }, -{ PipeSetupBankA_fEnableItuEmbeddedCodes , 0x038e, 0x0000 }, -{ PipeSetupBankA_bPixValidLineTypes , 0x0390, 0x0020 }, + { PipeSetupBankA_uwPipeOutputSize_Y_MSByte , 0x0385,0x600}, + { PipeSetupBankA_bPipeOutputFormat , 0x0388,0x3}, + { PipeSetupBankA_bPipeStreamLength , 0x038a,0x0}, + { PipeSetupBankA_fTogglePixValid , 0x038c,0x0}, + { PipeSetupBankA_fEnableItuEmbeddedCodes , 0x038e,0x0}, + { PipeSetupBankA_bPixValidLineTypes , 0x0390,0x20}, { PipeSetupBankA_fGenerateVSync , 0x0392, 0x1 }, -{ PipeSetupBankA_fCb_Cr_Flip , 0x0394, 0x0000 }, -{ PipeSetupBankA_fY_CbCr_Flip , 0x0396, 0x0000 }, + { PipeSetupBankA_fCb_Cr_Flip , 0x0394,0x0}, + { PipeSetupBankA_fY_CbCr_Flip , 0x0396,0x0}, + +// page "PipeSetupBankB" [mode static] +// { PipeSetupBankB_uwPipeOutputSize_X_LSByte , 0x0402, 0x0000 }, { PipeSetupBankB_uwPipeOutputSize_X_MSByte , 0x0401, 0x0000 }, { PipeSetupBankB_uwPipeOutputSize_Y_LSByte , 0x0406, 0x0000 }, { PipeSetupBankB_uwPipeOutputSize_Y_MSByte , 0x0405, 0x0000 }, { PipeSetupBankB_bPipeOutputFormat , 0x0408, 0x0000 }, @@ -869,26 +897,41 @@ struct nomadik_vpip_param vpip_default_p { PipeSetupBankB_fEnableItuEmbeddedCodes , 0x040e, 0x0000 }, { PipeSetupBankB_bPixValidLineTypes , 0x0410, 0x0000 }, { PipeSetupBankB_fGenerateVSync , 0x0412, 0x0000 }, { PipeSetupBankB_fCb_Cr_Flip , 0x0414, 0x0000 }, { PipeSetupBankB_fY_CbCr_Flip , 0x0416, 0x0000 }, + +// page "HostInterfaceManagerControl" +// { HostInterfaceManagerControl_bUserCommand , 0x0480, 0x0000 }, { HostInterfaceManagerControl_fTestStateMachine , 0x0482, 0x0000 }, { HostInterfaceManagerControl_fForceTestState , 0x0484, 0x0000 }, { HostInterfaceManagerControl_bManualNextState , 0x0486, 0x0000 }, { HostInterfaceManagerControl_bTestCoin , 0x0488, 0x0000 }, { HostInterfaceManagerControl_fAutoTransitionFromRxStopped , 0x048a, 0x0000 }, -{ HostInterfaceManagerControl_fStopSensor , 0x048c, 0x0001 }, + { HostInterfaceManagerControl_fStopSensor , 0x048c,0x1}, + +// page "HostInterfaceManagerStatus" [read only] +// { HostInterfaceManagerStatus_bThisLoLevelState , 0x0500, 0x0000 }, { HostInterfaceManagerStatus_bNextLoLevelState , 0x0502, 0x0000 }, { HostInterfaceManagerStatus_bHiLevelState , 0x0504, 0x0000 }, { HostInterfaceManagerStatus_bCycles , 0x0506, 0x0000 }, { HostInterfaceManagerStatus_bTestCoin , 0x0508, 0x0000 }, { HostInterfaceManagerStatus_fCycleForTest , 0x050a, 0x0000 }, + +// page "StreamManagerStatus" [read only] +// { StreamManagerStatus_bStreamStatus , 0x0580, 0x0000 }, { StreamManagerStatus_fIsSensorRunning , 0x0582, 0x0000 }, + +// page "ClockManagerControl" +// { ClockManagerControl_fClockManagerInDebugState , 0x0600, 0x0000 }, + +// page "LocalPipe0SetupBank" [read only] +// { LocalPipe0SetupBank_uwPipeOutputSize_X_LSByte , 0x0682, 0x0000 }, { LocalPipe0SetupBank_uwPipeOutputSize_X_MSByte , 0x0681, 0x0000 }, { LocalPipe0SetupBank_uwPipeOutputSize_Y_LSByte , 0x0686, 0x0000 }, { LocalPipe0SetupBank_uwPipeOutputSize_Y_MSByte , 0x0685, 0x0000 }, { LocalPipe0SetupBank_bPipeOutputFormat , 0x0688, 0x0000 }, @@ -897,83 +940,119 @@ struct nomadik_vpip_param vpip_default_p { LocalPipe0SetupBank_fEnableItuEmbeddedCodes , 0x068e, 0x0000 }, { LocalPipe0SetupBank_bPixValidLineTypes , 0x0690, 0x0000 }, { LocalPipe0SetupBank_fGenerateVSync , 0x0692, 0x0000 }, { LocalPipe0SetupBank_fCb_Cr_Flip , 0x0694, 0x0000 }, { LocalPipe0SetupBank_fY_CbCr_Flip , 0x0696, 0x0000 }, + +// page "Pipe0Control" +// { Pipe0Control_bPipeControl , 0x0700, 0x0000 }, { Pipe0Control_fPipeRefreshRequired , 0x0702, 0x0000 }, { Pipe0Control_fSfxSolariseEnabled , 0x0704, 0x0000 }, { Pipe0Control_fSfxNegativeEnabled , 0x0706, 0x0000 }, { Pipe0Control_ReplaceRedChannel , 0x0708, 0x0000 }, + /*{ Pipe0Control_ReplaceGreenChannel , 0x070a ,0x0000}, + { Pipe0Control_ReplaceBlueChannel , 0x070c ,0x0000},*/ { Pipe0Control_ReplaceGreenChannel , 0x070a, 0x0001 }, { Pipe0Control_ReplaceBlueChannel , 0x070c, 0x0002 }, + { Pipe0Control_fOverrideOFCropRegisters , 0x070e, 0x0000 }, { Pipe0Control_uwHCropRising_LSByte , 0x0712, 0x0000 }, { Pipe0Control_uwHCropRising_MSByte , 0x0711, 0x0000 }, { Pipe0Control_uwHCropFalling_LSByte , 0x0716, 0x0000 }, { Pipe0Control_uwHCropFalling_MSByte , 0x0715, 0x0000 }, { Pipe0Control_uwVCropRisingCrse_LSByte , 0x071a, 0x0000 }, { Pipe0Control_uwVCropRisingCrse_MSByte , 0x0719, 0x0000 }, { Pipe0Control_uwVCropFallingCrse_LSByte , 0x071e, 0x0000 }, { Pipe0Control_uwVCropFallingCrse_MSByte , 0x071d, 0x0000 }, + +// page "Pipe0Status" [read only] +// { Pipe0Status_bPipeStatus , 0x0780, 0x0000 }, { Pipe0Status_fPipeEnablePending , 0x0782, 0x0000 }, { Pipe0Status_bNumberOfFramesStreamed , 0x0784, 0x0000 }, { Pipe0Status_fDitherEnabled , 0x0786, 0x0000 }, { Pipe0Status_fVidCompletePending , 0x0788, 0x0000 }, + +// page "HostToSensorAccessControl" +// { HostToSensorAccessControl_bRequest , 0x0800, 0x0000 }, { HostToSensorAccessControl_bCommandCoin , 0x0802, 0x0000 }, { HostToSensorAccessControl_uwSensorIndex_LSByte , 0x0806, 0x0000 }, { HostToSensorAccessControl_uwSensorIndex_MSByte , 0x0805, 0x0000 }, + +// page "HostToSensorAccessStatus" [read only] +// { HostToSensorAccessStatus_bStatusCoin , 0x0880, 0x0000 }, { HostToSensorAccessStatus_bHostToSensorAccessErrorCount , 0x0882, 0x0000 }, + +// page "HostToSensorAccessData" +// { HostToSensorAccessData_uwDataLow_LSByte , 0x0902, 0x0000 }, { HostToSensorAccessData_uwDataLow_MSByte , 0x0901, 0x0000 }, -{ HostToSensorAccessData_uwDataHigh_LSByte , 0x0906, 0x0000 }, -{ HostToSensorAccessData_uwDataHigh_MSByte , 0x0905, 0x0000 }, + { HostToSensorAccessData_uwDataHigh_LSByte , 0x0906,0x0}, + { HostToSensorAccessData_uwDataHigh_MSByte , 0x0905,0x0}, + +// page "MasterI2cControl" +// { MasterI2cControl_bSensorSerialAddress , 0x0980, 0x0000 }, { MasterI2cControl_uwClk_Sensor_Comms_mhz_LSByte , 0x0984, 0x0000 }, { MasterI2cControl_uwClk_Sensor_Comms_mhz_MSByte , 0x0983, 0x0000 }, { MasterI2cControl_uwRequiredI2cSpeed_LSByte , 0x0988, 0x0000 }, -{ MasterI2cControl_uwRequiredI2cSpeed_MSByte , 0x0987, 0x0190 }, + { MasterI2cControl_uwRequiredI2cSpeed_MSByte , 0x0987,0x190}, { MasterI2cControl_bMaximumNumberOfGrabAttempts , 0x098a, 0x0000 }, + +// page "MasterI2cStatus" [read only] +// { MasterI2cStatus_bResourceStatus , 0x0a00, 0x0000 }, { MasterI2cStatus_uwI2CClkDiv_LSByte , 0x0a04, 0x0000 }, { MasterI2cStatus_uwI2CClkDiv_MSByte , 0x0a03, 0x0000 }, { MasterI2cStatus_fTransactionError , 0x0a06, 0x0000 }, { MasterI2cStatus_bNumberOfTransactionFailures , 0x0a08, 0x0000 }, { MasterI2cStatus_bNumberOfConsecutiveGrabFailures , 0x0a0a, 0x0000 }, { MasterI2cStatus_bNumberOfForcedReleases , 0x0a0c, 0x0000 }, -{ MasterI2cStatus_bNumberOfMcuClockDeratingAttemptsInhibited , 0x0a0e, 0x0000 }, -{ VideoTimingHostInputs_VideoTimingMode , 0x0a80, 0x0001 }, -{ VideoTimingHostInputs_bSensorBitsPerSystemClock , 0x0a82, 0x0002 }, + { MasterI2cStatus_bNumberOfMcuClockDeratingAttemptsInhibited , 0x0a0e}, + +// page "VideoTimingHostInputs" [mode static] +// + { VideoTimingHostInputs_VideoTimingMode , 0x0a80,0x01}, + { VideoTimingHostInputs_bSensorBitsPerSystemClock , 0x0a82,0x02}, { VideoTimingHostInputs_uwCsiRawFormat_LSByte , 0x0a86, 0x0000 }, { VideoTimingHostInputs_uwCsiRawFormat_MSByte , 0x0a85, 0x0808 }, { VideoTimingHostInputs_fpHostRxMaxDataRate_Mbps_LSByte , 0x0a8a, 0x0000 }, { VideoTimingHostInputs_fpHostRxMaxDataRate_Mbps_MSByte , 0x0a89, 0x508a }, { VideoTimingHostInputs_VsyncPolarity , 0x0a8c, 0x0000 }, { VideoTimingHostInputs_HsyncPolarity , 0x0a8e, 0x0000 }, + +// page "VideoTimingSensorFifoControl" [mode static] +// { VideoTimingSensorFifoControl_bFiFoWaterMarkProgrammingMode , 0x0b00, 0x0000 }, { VideoTimingSensorFifoControl_uwFifoWaterMarkPixels_LSByte , 0x0b04, 0x0000 }, { VideoTimingSensorFifoControl_uwFifoWaterMarkPixels_MSByte , 0x0b03, 0x0000 }, { VideoTimingSensorFifoControl_uwFifoSizePixels_LSByte , 0x0b08, 0x0000 }, { VideoTimingSensorFifoControl_uwFifoSizePixels_MSByte , 0x0b07, 0x0000 }, + +// page "VideoTimingSensorScalingAndSubSamplingControl" [mode static] +// { VideoTimingSensorScalingAndSubSamplingControl_fpOutputClockDeratingFraction_LSByte , 0x0b82, 0x0000 }, { VideoTimingSensorScalingAndSubSamplingControl_fpOutputClockDeratingFraction_MSByte , 0x0b81, 0x0000 }, { VideoTimingSensorScalingAndSubSamplingControl_bOutputClockDeratingRoundingMode , 0x0b84, 0x0000 }, { VideoTimingSensorScalingAndSubSamplingControl_fDerateVideoTimingClockForProfileZero , 0x0b86, 0x0000 }, + +// page "VideoTimingSensorConstraints" [mode static] +// { VideoTimingSensorConstraints_uwMinimumPrePllClockDiv_LSByte , 0x0c02, 0x0000 }, { VideoTimingSensorConstraints_uwMinimumPrePllClockDiv_MSByte , 0x0c01, 0x0000 }, { VideoTimingSensorConstraints_uwMaximumPrePllClockDiv_LSByte , 0x0c06, 0x0000 }, { VideoTimingSensorConstraints_uwMaximumPrePllClockDiv_MSByte , 0x0c05, 0x0000 }, { VideoTimingSensorConstraints_fpMinimumPllInputFrequency_Mhz_LSByte , 0x0c0a, 0x0000 }, { VideoTimingSensorConstraints_fpMinimumPllInputFrequency_Mhz_MSByte , 0x0c09, 0x0000 }, { VideoTimingSensorConstraints_uwMinimumPllMultiplier_LSByte , 0x0c0e, 0x0000 }, { VideoTimingSensorConstraints_uwMinimumPllMultiplier_MSByte , 0x0c0d, 0x0000 }, { VideoTimingSensorConstraints_uwMaximumPllMultiplier_LSByte , 0x0c12, 0x0000 }, { VideoTimingSensorConstraints_uwMaximumPllMultiplier_MSByte , 0x0c11, 0x0000 }, -{ VideoTimingSensorConstraints_fpMaximumPllOutputFrequency_Mhz_LSByte , 0x0c16, 0x0190 }, + { VideoTimingSensorConstraints_fpMaximumPllOutputFrequency_Mhz_LSByte , 0x0c16,0x190}, { VideoTimingSensorConstraints_fpMaximumPllOutputFrequency_Mhz_MSByte , 0x0c15, 0x0000 }, { VideoTimingSensorConstraints_uwMinimumVTSysClockDiv_LSByte , 0x0c1a, 0x0000 }, { VideoTimingSensorConstraints_uwMinimumVTSysClockDiv_MSByte , 0x0c19, 0x0000 }, { VideoTimingSensorConstraints_uwMaximumVTSysClockDiv_LSByte , 0x0c1e, 0x0000 }, { VideoTimingSensorConstraints_uwMaximumVTSysClockDiv_MSByte , 0x0c1d, 0x0000 }, @@ -991,17 +1070,23 @@ struct nomadik_vpip_param vpip_default_p { VideoTimingSensorConstraints_uwMaximumOPSysClockDiv_MSByte , 0x0c35, 0x0000 }, { VideoTimingSensorConstraints_fpMaximumOPSystemClockFrequency_Mhz_LSByte , 0x0c3a, 0x0000 }, { VideoTimingSensorConstraints_fpMaximumOPSystemClockFrequency_Mhz_MSByte , 0x0c39, 0x0000 }, { VideoTimingSensorConstraints_fpMaximumOPPixelClockFrequency_Mhz_LSByte , 0x0c3e, 0x0000 }, { VideoTimingSensorConstraints_fpMaximumOPPixelClockFrequency_Mhz_MSByte , 0x0c3d, 0x0000 }, + +// page "SensorScalingSubSamplingCapabilities" [mode static] +// { SensorScalingSubSamplingCapabilities_bSensorScalingMode , 0x0c80, 0x0000 }, { SensorScalingSubSamplingCapabilities_uwScalerMMin_LSByte , 0x0c84, 0x0000 }, { SensorScalingSubSamplingCapabilities_uwScalerMMin_MSByte , 0x0c83, 0x0000 }, { SensorScalingSubSamplingCapabilities_uwScalerMMax_LSByte , 0x0c88, 0x0000 }, { SensorScalingSubSamplingCapabilities_uwScalerMMax_MSByte , 0x0c87, 0x0000 }, { SensorScalingSubSamplingCapabilities_uwMaxOddInc_LSByte , 0x0c8c, 0x0000 }, { SensorScalingSubSamplingCapabilities_uwMaxOddInc_MSByte , 0x0c8b, 0x0000 }, + +// page "VideoTimingOutput" +// { VideoTimingOutput_uwPrePllClockDiv_LSByte , 0x0d02, 0x0000 }, { VideoTimingOutput_uwPrePllClockDiv_MSByte , 0x0d01, 0x0000 }, { VideoTimingOutput_fpPllInputFrequency_Mhz_LSByte , 0x0d06, 0x0000 }, { VideoTimingOutput_fpPllInputFrequency_Mhz_MSByte , 0x0d05, 0x0000 }, { VideoTimingOutput_uwPllMultiplier_LSByte , 0x0d0a, 0x0000 }, @@ -1026,24 +1111,36 @@ struct nomadik_vpip_param vpip_default_p { VideoTimingOutput_uwOPPixelClockDiv_MSByte , 0x0d2d, 0x0000 }, { VideoTimingOutput_fpOPPixelClockFrequency_Mhz_LSByte , 0x0d32, 0x0000 }, { VideoTimingOutput_fpOPPixelClockFrequency_Mhz_MSByte , 0x0d31, 0x0000 }, { VideoTimingOutput_fpOutputTimingClockDerating_LSByte , 0x0d36, 0x0000 }, { VideoTimingOutput_fpOutputTimingClockDerating_MSByte , 0x0d35, 0x0000 }, + +// page "DummyPage5" + { DummyPage5_bDummyPageElement , 0x0d80, 0x0000 }, + +// page "VideoTimingInputsFarSensor" [mode static] + { VideoTimingInputsFarSensor_VideoTimingMode , 0x0e00, 0x0001 }, { VideoTimingInputsFarSensor_bSensorBitsPerSystemClock , 0x0e02, 0x0002 }, { VideoTimingInputsFarSensor_uwCsiRawFormat_LSByte , 0x0e06, 0x0000 }, { VideoTimingInputsFarSensor_uwCsiRawFormat_MSByte , 0x0e05, 0x0808 }, { VideoTimingInputsFarSensor_fpHostRxMaxDataRate_Mbps_LSByte , 0x0e0a, 0x0000 }, { VideoTimingInputsFarSensor_fpHostRxMaxDataRate_Mbps_MSByte , 0x0e09, 0x508a }, { VideoTimingInputsFarSensor_VsyncPolarity , 0x0e0c, 0x0000 }, { VideoTimingInputsFarSensor_HsyncPolarity , 0x0e0e, 0x0000 }, + +// page "SensorFarVideoTimingSensorFifoControl" [mode static] +// { SensorFarVideoTimingSensorFifoControl_bFiFoWaterMarkProgrammingMode , 0x0e80, 0x0000 }, { SensorFarVideoTimingSensorFifoControl_uwFifoWaterMarkPixels_LSByte , 0x0e84, 0x0000 }, { SensorFarVideoTimingSensorFifoControl_uwFifoWaterMarkPixels_MSByte , 0x0e83, 0x0000 }, { SensorFarVideoTimingSensorFifoControl_uwFifoSizePixels_LSByte , 0x0e88, 0x0000 }, { SensorFarVideoTimingSensorFifoControl_uwFifoSizePixels_MSByte , 0x0e87, 0x0000 }, + +// page "VideoTimingFarSensorConstraints" [mode static] +// { VideoTimingFarSensorConstraints_uwMinimumPrePllClockDiv_LSByte , 0x0f02, 0x0000 }, { VideoTimingFarSensorConstraints_uwMinimumPrePllClockDiv_MSByte , 0x0f01, 0x0000 }, { VideoTimingFarSensorConstraints_uwMaximumPrePllClockDiv_LSByte , 0x0f06, 0x0000 }, { VideoTimingFarSensorConstraints_uwMaximumPrePllClockDiv_MSByte , 0x0f05, 0x0000 }, { VideoTimingFarSensorConstraints_fpMinimumPllInputFrequency_Mhz_LSByte , 0x0f0a, 0x0000 }, @@ -1072,17 +1169,23 @@ struct nomadik_vpip_param vpip_default_p { VideoTimingFarSensorConstraints_uwMaximumOPSysClockDiv_MSByte , 0x0f35, 0x0000 }, { VideoTimingFarSensorConstraints_fpMaximumOPSystemClockFrequency_Mhz_LSByte , 0x0f3a, 0x0000 }, { VideoTimingFarSensorConstraints_fpMaximumOPSystemClockFrequency_Mhz_MSByte , 0x0f39, 0x0000 }, { VideoTimingFarSensorConstraints_fpMaximumOPPixelClockFrequency_Mhz_LSByte , 0x0f3e, 0x0000 }, { VideoTimingFarSensorConstraints_fpMaximumOPPixelClockFrequency_Mhz_MSByte , 0x0f3d, 0x0000 }, + +// page "SensorFarScalingSubSamplingCapabilities" [mode static] +// { SensorFarScalingSubSamplingCapabilities_bSensorScalingMode , 0x0f80, 0x0000 }, { SensorFarScalingSubSamplingCapabilities_uwScalerMMin_LSByte , 0x0f84, 0x0000 }, { SensorFarScalingSubSamplingCapabilities_uwScalerMMin_MSByte , 0x0f83, 0x0000 }, { SensorFarScalingSubSamplingCapabilities_uwScalerMMax_LSByte , 0x0f88, 0x0000 }, { SensorFarScalingSubSamplingCapabilities_uwScalerMMax_MSByte , 0x0f87, 0x0000 }, { SensorFarScalingSubSamplingCapabilities_uwMaxOddInc_LSByte , 0x0f8c, 0x0000 }, { SensorFarScalingSubSamplingCapabilities_uwMaxOddInc_MSByte , 0x0f8b, 0x0000 }, + +// page "VideoTimingFarOutput" +// { VideoTimingFarOutput_uwPrePllClockDiv_LSByte , 0x1002, 0x0000 }, { VideoTimingFarOutput_uwPrePllClockDiv_MSByte , 0x1001, 0x0000 }, { VideoTimingFarOutput_fpPllInputFrequency_Mhz_LSByte , 0x1006, 0x0000 }, { VideoTimingFarOutput_fpPllInputFrequency_Mhz_MSByte , 0x1005, 0x0000 }, { VideoTimingFarOutput_uwPllMultiplier_LSByte , 0x100a, 0x0000 }, @@ -1107,24 +1210,36 @@ struct nomadik_vpip_param vpip_default_p { VideoTimingFarOutput_uwOPPixelClockDiv_MSByte , 0x102d, 0x0000 }, { VideoTimingFarOutput_fpOPPixelClockFrequency_Mhz_LSByte , 0x1032, 0x0000 }, { VideoTimingFarOutput_fpOPPixelClockFrequency_Mhz_MSByte , 0x1031, 0x0000 }, { VideoTimingFarOutput_fpOutputTimingClockDerating_LSByte , 0x1036, 0x0000 }, { VideoTimingFarOutput_fpOutputTimingClockDerating_MSByte , 0x1035, 0x0000 }, + +// page "DummyPage6" +// { DummyPage6_bDummyPageElement , 0x1080, 0x0000 }, + +// page "VideoTimingInputsNearSensor" [mode static] +// { VideoTimingInputsNearSensor_VideoTimingMode , 0x1100, 0x0001 }, { VideoTimingInputsNearSensor_bSensorBitsPerSystemClock , 0x1102, 0x0002 }, { VideoTimingInputsNearSensor_uwCsiRawFormat_LSByte , 0x1106, 0x0000 }, { VideoTimingInputsNearSensor_uwCsiRawFormat_MSByte , 0x1105, 0x0808 }, { VideoTimingInputsNearSensor_fpHostRxMaxDataRate_Mbps_LSByte , 0x110a, 0x0000 }, { VideoTimingInputsNearSensor_fpHostRxMaxDataRate_Mbps_MSByte , 0x1109, 0x508a }, { VideoTimingInputsNearSensor_VsyncPolarity , 0x110c, 0x0000 }, { VideoTimingInputsNearSensor_HsyncPolarity , 0x110e, 0x0000 }, + +// page "SensorNearVideoTimingSensorFifoControl" [mode static] +// { SensorNearVideoTimingSensorFifoControl_bFiFoWaterMarkProgrammingMode , 0x1180, 0x0000 }, { SensorNearVideoTimingSensorFifoControl_uwFifoWaterMarkPixels_LSByte , 0x1184, 0x0000 }, { SensorNearVideoTimingSensorFifoControl_uwFifoWaterMarkPixels_MSByte , 0x1183, 0x0000 }, { SensorNearVideoTimingSensorFifoControl_uwFifoSizePixels_LSByte , 0x1188, 0x0000 }, { SensorNearVideoTimingSensorFifoControl_uwFifoSizePixels_MSByte , 0x1187, 0x0000 }, + +// page "VideoTimingNearSensorConstraints" [mode static] +// { VideoTimingNearSensorConstraints_uwMinimumPrePllClockDiv_LSByte , 0x1202, 0x0000 }, { VideoTimingNearSensorConstraints_uwMinimumPrePllClockDiv_MSByte , 0x1201, 0x0000 }, { VideoTimingNearSensorConstraints_uwMaximumPrePllClockDiv_LSByte , 0x1206, 0x0000 }, { VideoTimingNearSensorConstraints_uwMaximumPrePllClockDiv_MSByte , 0x1205, 0x0000 }, { VideoTimingNearSensorConstraints_fpMinimumPllInputFrequency_Mhz_LSByte , 0x120a, 0x0000 }, @@ -1153,17 +1268,23 @@ struct nomadik_vpip_param vpip_default_p { VideoTimingNearSensorConstraints_uwMaximumOPSysClockDiv_MSByte , 0x1235, 0x0000 }, { VideoTimingNearSensorConstraints_fpMaximumOPSystemClockFrequency_Mhz_LSByte , 0x123a, 0x0000 }, { VideoTimingNearSensorConstraints_fpMaximumOPSystemClockFrequency_Mhz_MSByte , 0x1239, 0x0000 }, { VideoTimingNearSensorConstraints_fpMaximumOPPixelClockFrequency_Mhz_LSByte , 0x123e, 0x0000 }, { VideoTimingNearSensorConstraints_fpMaximumOPPixelClockFrequency_Mhz_MSByte , 0x123d, 0x0000 }, + +// page "SensorNearScalingSubSamplingCapabilities" [mode static] +// { SensorNearScalingSubSamplingCapabilities_bSensorScalingMode , 0x1280, 0x0000 }, { SensorNearScalingSubSamplingCapabilities_uwScalerMMin_LSByte , 0x1284, 0x0000 }, { SensorNearScalingSubSamplingCapabilities_uwScalerMMin_MSByte , 0x1283, 0x0000 }, { SensorNearScalingSubSamplingCapabilities_uwScalerMMax_LSByte , 0x1288, 0x0000 }, { SensorNearScalingSubSamplingCapabilities_uwScalerMMax_MSByte , 0x1287, 0x0000 }, { SensorNearScalingSubSamplingCapabilities_uwMaxOddInc_LSByte , 0x128c, 0x0000 }, { SensorNearScalingSubSamplingCapabilities_uwMaxOddInc_MSByte , 0x128b, 0x0000 }, + +// page "VideoTimingNearOutput" +// { VideoTimingNearOutput_uwPrePllClockDiv_LSByte , 0x1302, 0x0000 }, { VideoTimingNearOutput_uwPrePllClockDiv_MSByte , 0x1301, 0x0000 }, { VideoTimingNearOutput_fpPllInputFrequency_Mhz_LSByte , 0x1306, 0x0000 }, { VideoTimingNearOutput_fpPllInputFrequency_Mhz_MSByte , 0x1305, 0x0000 }, { VideoTimingNearOutput_uwPllMultiplier_LSByte , 0x130a, 0x0000 }, @@ -1188,39 +1309,51 @@ struct nomadik_vpip_param vpip_default_p { VideoTimingNearOutput_uwOPPixelClockDiv_MSByte , 0x132d, 0x0000 }, { VideoTimingNearOutput_fpOPPixelClockFrequency_Mhz_LSByte , 0x1332, 0x0000 }, { VideoTimingNearOutput_fpOPPixelClockFrequency_Mhz_MSByte , 0x1331, 0x0000 }, { VideoTimingNearOutput_fpOutputTimingClockDerating_LSByte , 0x1336, 0x0000 }, { VideoTimingNearOutput_fpOutputTimingClockDerating_MSByte , 0x1335, 0x0000 }, + +// page "DummyPage7" +// { DummyPage7_bDummyPageElement , 0x1380, 0x0000 }, + +// page "SystemConfiguration" +// { SystemConfiguration_fFarSensorPresent , 0x1400, 0x0001 }, -{ SystemConfiguration_CcpRxForFarSensor , 0x1402, 0x0000 }, -{ SystemConfiguration_fNearSensorPresent , 0x1404, 0x0001 }, -{ SystemConfiguration_CcpRxForNearSensor , 0x1406, 0x0001 }, + { SystemConfiguration_CcpRxForFarSensor , 0x1402 ,0x00}, + { SystemConfiguration_fNearSensorPresent , 0x1404 ,0x01}, + { SystemConfiguration_CcpRxForNearSensor , 0x1406 ,0x01}, { SystemConfiguration_uwExternalClockFrequency_Mhz_num_LSByte , 0x140a, 0x0000 }, -{ SystemConfiguration_uwExternalClockFrequency_Mhz_num_MSByte , 0x1409, 0x0060 }, -{ SystemConfiguration_bExternalClockFrequency_Mhz_den , 0x140c, 0x0005 }, -{ SystemConfiguration_fFocusLensActuatorOnSensorNearPresent , 0x140e, 0x1 },//0x0000 }, -{ SystemConfiguration_fFocusLensActuatorOnSensorFarPresent , 0x1410, 0x1 },//0x0000 },//for auto focus + { SystemConfiguration_uwExternalClockFrequency_Mhz_num_MSByte , 0x1409 ,0x60}, + { SystemConfiguration_bExternalClockFrequency_Mhz_den , 0x140c ,0x05}, + { SystemConfiguration_fFocusLensActuatorOnSensorNearPresent , 0x140e ,0x1}, + { SystemConfiguration_fFocusLensActuatorOnSensorFarPresent , 0x1410 ,0x1}, { SystemConfiguration_fShutterActuatorOnSensorNearPresent , 0x1412, 0x0000 }, { SystemConfiguration_fShutterActuatorOnSensorFarPresent , 0x1414, 0x0000 }, { SystemConfiguration_fpMcuClkFrequency_MHz_LSByte , 0x1418, 0x0000 }, { SystemConfiguration_fpMcuClkFrequency_MHz_MSByte , 0x1417, 0x0000 }, + +// page "SensorInformation" [read only] +// { SensorInformation_fFarSensorAvailable , 0x1480, 0x0000 }, { SensorInformation_uwFarSensorModelId_LSByte , 0x1484, 0x0000 }, { SensorInformation_uwFarSensorModelId_MSByte , 0x1483, 0x0000 }, { SensorInformation_bFarSensorRevision , 0x1486, 0x0000 }, { SensorInformation_bFarSensorManufacturerId , 0x1488, 0x0000 }, { SensorInformation_bFarSensorSMIAVersion , 0x148a, 0x0000 }, -{ SensorInformation_fNearSensorAvailable , 0x148c, 0x0000 }, + { SensorInformation_fNearSensorAvailable , 0x148c ,0x0000}, //0x108c { SensorInformation_uwNearSensorModelId_LSByte , 0x1490, 0x0000 }, { SensorInformation_uwNearSensorModelId_MSByte , 0x148f, 0x0000 }, { SensorInformation_bNearSensorRevision , 0x1492, 0x0000 }, { SensorInformation_bNearSensorManufacturerId , 0x1494, 0x0000 }, { SensorInformation_bNearSensorSMIAVersion , 0x1496, 0x0000 }, -{ SensorInformation_bCurrentlyActiveSensor , 0x1498, 0x0000 }, + { SensorInformation_bCurrentlyActiveSensor , 0x1498 ,0x0000}, //0x1098 { SensorInformation_fCurrentSensorAvailable , 0x149a, 0x0000 }, { SensorInformation_fSensorChangedSinceLastStreaming , 0x149c, 0x0000 }, + +// page "SensorCapabilitiesFarSensor" +// { SensorCapabilitiesFarSensor_uwSensorIntegrationTimeCapability_LSByte , 0x1502, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorIntegrationTimeCapability_MSByte , 0x1501, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorMinimumCoarseIntegrationLines_LSByte , 0x1506, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorMinimumCoarseIntegrationLines_MSByte , 0x1505, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorCoarseIntegrationTimeMaxMargin_LSByte , 0x150a, 0x0000 }, @@ -1228,12 +1361,14 @@ struct nomadik_vpip_param vpip_default_p { SensorCapabilitiesFarSensor_uwSensorMinimumFineIntegrationPixels_LSByte , 0x150e, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorMinimumFineIntegrationPixels_MSByte , 0x150d, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorFineIntegrationTimeMaxMargin_LSByte , 0x1512, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorFineIntegrationTimeMaxMargin_MSByte , 0x1511, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorAnalogGainMinimum_LSByte , 0x1516, 0x0000 }, + /*{ SensorCapabilitiesFarSensor_uwSensorAnalogGainMinimum_MSByte , 0x1515 ,0x0000},*/ { SensorCapabilitiesFarSensor_uwSensorAnalogGainMinimum_MSByte , 0x1515, 0x0020 }, { SensorCapabilitiesFarSensor_uwSensorAnalogGainMaximum_LSByte , 0x151a, 0x0000 }, + /*{ SensorCapabilitiesFarSensor_uwSensorAnalogGainMaximum_MSByte , 0x1519 ,0x00f0},*/ { SensorCapabilitiesFarSensor_uwSensorAnalogGainMaximum_MSByte , 0x1519, 0x0080 }, { SensorCapabilitiesFarSensor_uwSensorAnalogGainCodeStep_LSByte , 0x151e, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorAnalogGainCodeStep_MSByte , 0x151d, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorAnalogGainType_LSByte , 0x1522, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorAnalogGainType_MSByte , 0x1521, 0x0000 }, @@ -1263,11 +1398,15 @@ struct nomadik_vpip_param vpip_default_p { SensorCapabilitiesFarSensor_uwSensorDigitalGainCapability_LSByte , 0x1554, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorDigitalGainCapability_MSByte , 0x1553, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorDigitalGainMinimum_LSByte , 0x1558, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorDigitalGainMinimum_MSByte , 0x1557, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorDataPedestal_LSByte , 0x155c, 0x0000 }, + /* { SensorCapabilitiesFarSensor_uwSensorDataPedestal_MSByte , 0x155b ,0x0000},*/ { SensorCapabilitiesFarSensor_uwSensorDataPedestal_MSByte , 0x155b, 0x0040 }, + +// page "SensorCapabilitiesNearSensor" +// { SensorCapabilitiesNearSensor_uwSensorIntegrationTimeCapability_LSByte , 0x1582, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorIntegrationTimeCapability_MSByte , 0x1581, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorMinimumCoarseIntegrationLines_LSByte , 0x1586, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorMinimumCoarseIntegrationLines_MSByte , 0x1585, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorCoarseIntegrationTimeMaxMargin_LSByte , 0x158a, 0x0000 }, @@ -1276,12 +1415,12 @@ struct nomadik_vpip_param vpip_default_p { SensorCapabilitiesNearSensor_uwSensorMinimumFineIntegrationPixels_MSByte , 0x158d, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorFineIntegrationTimeMaxMargin_LSByte , 0x1592, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorFineIntegrationTimeMaxMargin_MSByte , 0x1591, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorAnalogGainMinimum_LSByte , 0x1596, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorAnalogGainMinimum_MSByte , 0x1595, 0x0000 }, -{ SensorCapabilitiesNearSensor_uwSensorAnalogGainMaximum_LSByte , 0x159a, 0x0000 }, -{ SensorCapabilitiesNearSensor_uwSensorAnalogGainMaximum_MSByte , 0x1599, 0x00f0 }, + { SensorCapabilitiesNearSensor_uwSensorAnalogGainMaximum_LSByte , 0x159a ,0x00}, + { SensorCapabilitiesNearSensor_uwSensorAnalogGainMaximum_MSByte , 0x1599 ,0xf0}, { SensorCapabilitiesNearSensor_uwSensorAnalogGainCodeStep_LSByte , 0x159e, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorAnalogGainCodeStep_MSByte , 0x159d, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorAnalogGainType_LSByte , 0x15a2, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorAnalogGainType_MSByte , 0x15a1, 0x0000 }, { SensorCapabilitiesNearSensor_fpSensorAnalogGainConstM0_LSByte , 0x15a6, 0x0000 }, @@ -1311,10 +1450,13 @@ struct nomadik_vpip_param vpip_default_p { SensorCapabilitiesNearSensor_uwSensorDigitalGainCapability_MSByte , 0x15d3, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorDigitalGainMinimum_LSByte , 0x15d8, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorDigitalGainMinimum_MSByte , 0x15d7, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorDataPedestal_LSByte , 0x15dc, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorDataPedestal_MSByte , 0x15db, 0x0000 }, + +// page "SensorCapabilitiesCurrentSensor" +// { SensorCapabilitiesCurrentSensor_uwSensorIntegrationTimeCapability_LSByte , 0x1602, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorIntegrationTimeCapability_MSByte , 0x1601, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorMinimumCoarseIntegrationLines_LSByte , 0x1606, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorMinimumCoarseIntegrationLines_MSByte , 0x1605, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorCoarseIntegrationTimeMaxMargin_LSByte , 0x160a, 0x0000 }, @@ -1322,12 +1464,14 @@ struct nomadik_vpip_param vpip_default_p { SensorCapabilitiesCurrentSensor_uwSensorMinimumFineIntegrationPixels_LSByte , 0x160e, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorMinimumFineIntegrationPixels_MSByte , 0x160d, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorFineIntegrationTimeMaxMargin_LSByte , 0x1612, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorFineIntegrationTimeMaxMargin_MSByte , 0x1611, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorAnalogGainMinimum_LSByte , 0x1616, 0x0000 }, + /*{ SensorCapabilitiesCurrentSensor_uwSensorAnalogGainMinimum_MSByte , 0x1615 ,0x0000},*/ { SensorCapabilitiesCurrentSensor_uwSensorAnalogGainMinimum_MSByte , 0x1615, 0x0020 }, { SensorCapabilitiesCurrentSensor_uwSensorAnalogGainMaximum_LSByte , 0x161a, 0x0000 }, + /*{ SensorCapabilitiesCurrentSensor_uwSensorAnalogGainMaximum_MSByte , 0x1619 ,0x0000},*/ { SensorCapabilitiesCurrentSensor_uwSensorAnalogGainMaximum_MSByte , 0x1619, 0x0080 }, { SensorCapabilitiesCurrentSensor_uwSensorAnalogGainCodeStep_LSByte , 0x161e, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorAnalogGainCodeStep_MSByte , 0x161d, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorAnalogGainType_LSByte , 0x1622, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorAnalogGainType_MSByte , 0x1621, 0x0000 }, @@ -1358,10 +1502,13 @@ struct nomadik_vpip_param vpip_default_p { SensorCapabilitiesCurrentSensor_uwSensorDigitalGainCapability_MSByte , 0x1653, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorDigitalGainMinimum_LSByte , 0x1658, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorDigitalGainMinimum_MSByte , 0x1657, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorDataPedestal_LSByte , 0x165c, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorDataPedestal_MSByte , 0x165b, 0x0000 }, + +// page "SensorFrameConstraintsFar" [mode static] +// { SensorFrameConstraintsFar_uwVTXAddrMin_LSByte , 0x1682, 0x0000 }, { SensorFrameConstraintsFar_uwVTXAddrMin_MSByte , 0x1681, 0x0000 }, { SensorFrameConstraintsFar_uwVTYAddrMin_LSByte , 0x1686, 0x0000 }, { SensorFrameConstraintsFar_uwVTYAddrMin_MSByte , 0x1685, 0x0000 }, { SensorFrameConstraintsFar_uwVTXAddrMax_LSByte , 0x168a, 0x0000 }, @@ -1386,10 +1533,13 @@ struct nomadik_vpip_param vpip_default_p { SensorFrameConstraintsFar_uwMaxVTLineLengthPck_MSByte , 0x16ad, 0x0000 }, { SensorFrameConstraintsFar_uwMinVTLineBlankingPck_LSByte , 0x16b2, 0x0000 }, { SensorFrameConstraintsFar_uwMinVTLineBlankingPck_MSByte , 0x16b1, 0x0000 }, { SensorFrameConstraintsFar_uwMinVTFrameBlanking_LSByte , 0x16b6, 0x0000 }, { SensorFrameConstraintsFar_uwMinVTFrameBlanking_MSByte , 0x16b5, 0x0000 }, + +// page "SensorFrameConstraintsNear" [mode static] +// { SensorFrameConstraintsNear_uwVTXAddrMin_LSByte , 0x1702, 0x0000 }, { SensorFrameConstraintsNear_uwVTXAddrMin_MSByte , 0x1701, 0x0000 }, { SensorFrameConstraintsNear_uwVTYAddrMin_LSByte , 0x1706, 0x0000 }, { SensorFrameConstraintsNear_uwVTYAddrMin_MSByte , 0x1705, 0x0000 }, { SensorFrameConstraintsNear_uwVTXAddrMax_LSByte , 0x170a, 0x0000 }, @@ -1414,12 +1564,18 @@ struct nomadik_vpip_param vpip_default_p { SensorFrameConstraintsNear_uwMaxVTLineLengthPck_MSByte , 0x172d, 0x0000 }, { SensorFrameConstraintsNear_uwMinVTLineBlankingPck_LSByte , 0x1732, 0x0000 }, { SensorFrameConstraintsNear_uwMinVTLineBlankingPck_MSByte , 0x1731, 0x0000 }, { SensorFrameConstraintsNear_uwMinVTFrameBlanking_LSByte , 0x1736, 0x0000 }, { SensorFrameConstraintsNear_uwMinVTFrameBlanking_MSByte , 0x1735, 0x0000 }, -{ AntiFlickerExposureControls_bMainsFrequency_Hz , 0x1780, 0x0032 }, -{ AntiFlickerExposureControls_fGuaranteeStaticFlickerFrameLength , 0x1782, 0x0000 }, + +// page "AntiFlickerExposureControls" +// + { AntiFlickerExposureControls_bMainsFrequency_Hz , 0x1780 ,0x32}, + { AntiFlickerExposureControls_fGuaranteeStaticFlickerFrameLength , 0x1782,0x00},//0 for 3mp, 1 for 2mp + +// page "CurrentFrameDimension" [read only] +// { CurrentFrameDimension_uwVTFrameLengthLines_LSByte , 0x1802, 0x0000 }, { CurrentFrameDimension_uwVTFrameLengthLines_MSByte , 0x1801, 0x0000 }, { CurrentFrameDimension_uwVTLineLengthPck_LSByte , 0x1806, 0x0000 }, { CurrentFrameDimension_uwVTLineLengthPck_MSByte , 0x1805, 0x0000 }, { CurrentFrameDimension_uwVTXAddrStart_LSByte , 0x180a, 0x0000 }, @@ -1447,10 +1603,13 @@ struct nomadik_vpip_param vpip_default_p { CurrentFrameDimension_bScalingMode , 0x1834, 0x0000 }, { CurrentFrameDimension_fpScaleFactor_LSByte , 0x1838, 0x0000 }, { CurrentFrameDimension_fpScaleFactor_MSByte , 0x1837, 0x0000 }, { CurrentFrameDimension_uwScalerM_LSByte , 0x183c, 0x0000 }, { CurrentFrameDimension_uwScalerM_MSByte , 0x183b, 0x0000 }, + +// page "SensorFrameConstraints" [read only] +// { SensorFrameConstraints_uwVTXAddrMin_LSByte , 0x1882, 0x0000 }, { SensorFrameConstraints_uwVTXAddrMin_MSByte , 0x1881, 0x0000 }, { SensorFrameConstraints_uwVTYAddrMin_LSByte , 0x1886, 0x0000 }, { SensorFrameConstraints_uwVTYAddrMin_MSByte , 0x1885, 0x0000 }, { SensorFrameConstraints_uwVTXAddrMax_LSByte , 0x188a, 0x0000 }, @@ -1475,16 +1634,22 @@ struct nomadik_vpip_param vpip_default_p { SensorFrameConstraints_uwMaxVTLineLengthPck_MSByte , 0x18ad, 0x0000 }, { SensorFrameConstraints_uwMinVTLineBlankingPck_LSByte , 0x18b2, 0x0000 }, { SensorFrameConstraints_uwMinVTLineBlankingPck_MSByte , 0x18b1, 0x0000 }, { SensorFrameConstraints_uwMinVTFrameBlanking_LSByte , 0x18b6, 0x0000 }, { SensorFrameConstraints_uwMinVTFrameBlanking_MSByte , 0x18b5, 0x0000 }, + +// page "HostFrameConstraints" +// { HostFrameConstraints_uwMinimumOPLineBlanking_pixels_LSByte , 0x1902, 0x0000 }, { HostFrameConstraints_uwMinimumOPLineBlanking_pixels_MSByte , 0x1901, 0x0000 }, { HostFrameConstraints_uwMinimumOPFrameBlanking_lines_LSByte , 0x1906, 0x0000 }, { HostFrameConstraints_uwMinimumOPFrameBlanking_lines_MSByte , 0x1905, 0x0000 }, { HostFrameConstraints_bMinimumPostScalar0LineBlanking_pixels , 0x1908, 0x0000 }, { HostFrameConstraints_bMinimumPostScalar1LineBlanking_pixels , 0x190a, 0x0000 }, + +// page "FrameDimensionStatus" [read only] +// { FrameDimensionStatus_fFrameLengthChangePending , 0x1980, 0x0000 }, { FrameDimensionStatus_fFrameDimensionChangePending , 0x1982, 0x0000 }, { FrameDimensionStatus_uwVTFrameLengthPending_lines_LSByte , 0x1986, 0x0000 }, { FrameDimensionStatus_uwVTFrameLengthPending_lines_MSByte , 0x1985, 0x0000 }, { FrameDimensionStatus_fFrameLengthChangeInhibitedForCoarseExposure , 0x1988, 0x0000 }, @@ -1503,53 +1668,97 @@ struct nomadik_vpip_param vpip_default_p { FrameDimensionStatus_uwMaximumSensorFOVY_LSByte , 0x19a4, 0x0000 }, { FrameDimensionStatus_uwMaximumSensorFOVY_MSByte , 0x19a3, 0x0000 }, { FrameDimensionStatus_uwOPXOutputSize_LSByte , 0x19a8, 0x0000 }, { FrameDimensionStatus_uwOPXOutputSize_MSByte , 0x19a7, 0x0000 }, { FrameDimensionStatus_fSensorPreScaleFactorChanged , 0x19aa, 0x0000 }, + +// page "BinningControl" [mode static] +// { BinningControl_fEnableBinning , 0x1a00, 0x0000 }, + +// page "BinningStatus" [read only] +// { BinningStatus_fBinningEnabled , 0x1a80, 0x0000 }, + +// page "Sensor0BinningInputs" +// { Sensor0BinningInputs_uwMinVTLineLengthPck_LSByte , 0x1b02, 0x0000 }, { Sensor0BinningInputs_uwMinVTLineLengthPck_MSByte , 0x1b01, 0x0000 }, { Sensor0BinningInputs_uwSensorMinimumFineIntegrationPixels_LSByte , 0x1b06, 0x0000 }, { Sensor0BinningInputs_uwSensorMinimumFineIntegrationPixels_MSByte , 0x1b05, 0x0000 }, + +// page "Sensor1BinningInputs" +// { Sensor1BinningInputs_uwMinVTLineLengthPck_LSByte , 0x1b82, 0x0000 }, { Sensor1BinningInputs_uwMinVTLineLengthPck_MSByte , 0x1b81, 0x0000 }, { Sensor1BinningInputs_uwSensorMinimumFineIntegrationPixels_LSByte , 0x1b86, 0x0000 }, { Sensor1BinningInputs_uwSensorMinimumFineIntegrationPixels_MSByte , 0x1b85, 0x0000 }, + +// page "CurrentSensorBinningInputs" +// { CurrentSensorBinningInputs_uwMinVTLineLengthPck_LSByte , 0x1c02, 0x0000 }, { CurrentSensorBinningInputs_uwMinVTLineLengthPck_MSByte , 0x1c01, 0x0000 }, { CurrentSensorBinningInputs_uwSensorMinimumFineIntegrationPixels_LSByte , 0x1c06, 0x0000 }, { CurrentSensorBinningInputs_uwSensorMinimumFineIntegrationPixels_MSByte , 0x1c05, 0x0000 }, + +// page "FlashManagerControl" +// + /* + { FlashManagerControl_bMode , 0x1c80 ,0x0}, + { FlashManagerControl_bFlashType , 0x1c82 ,0x0}, + { FlashManagerControl_fOrMainAndPreFlashPulse , 0x1c84 ,0x0000}, + { FlashManagerControl_RefPointCalcMode , 0x1c86 ,0x0000}, + { FlashManagerControl_wIntegrationStartPosition_LSByte , 0x1c8a ,0x0000}, + { FlashManagerControl_wIntegrationStartPosition_MSByte , 0x1c89 ,0x0000}, + { FlashManagerControl_fOverrideIntegrationStartPosition , 0x1c8c ,0x0000}, + { FlashManagerControl_fpFlashFiringDelay_us_LSByte , 0x1c90 ,0x0000}, + { FlashManagerControl_fpFlashFiringDelay_us_MSByte , 0x1c8f ,0x0000}, + { FlashManagerControl_bNumberOfPreFlashes , 0x1c92 ,0x0000}, + { FlashManagerControl_fpPulseWidthMainFlash_us_LSByte , 0x1c96 ,0x0000}, + { FlashManagerControl_fpPulseWidthMainFlash_us_MSByte , 0x1c95 ,0x0000}, + { FlashManagerControl_fpPulseWidthPreFlash_us_LSByte , 0x1c9a ,0x0000}, + { FlashManagerControl_fpPulseWidthPreFlash_us_MSByte , 0x1c99 ,0x0000}, + { FlashManagerControl_fpTimeBetweenTwoPreFlashes_us_LSByte , 0x1c9e ,0x0000}, + { FlashManagerControl_fpTimeBetweenTwoPreFlashes_us_MSByte , 0x1c9d ,0x0000}, + { FlashManagerControl_fpTimeBetweenPreFlashAndMainFlash_us_LSByte , 0x1ca2 ,0x0000}, + { FlashManagerControl_fpTimeBetweenPreFlashAndMainFlash_us_MSByte , 0x1ca1 ,0x0000}, + { FlashManagerControl_cMainFlashStartFrame , 0x1ca4 ,0x0000}, + */ { FlashManagerControl_bMode , 0x1c80, 0x0000 }, { FlashManagerControl_bFlashType , 0x1c82, 0x0002 }, { FlashManagerControl_fOrMainAndPreFlashPulse , 0x1c84, 0x0001 }, { FlashManagerControl_RefPointCalcMode , 0x1c86, 0x0000 }, { FlashManagerControl_wIntegrationStartPosition_LSByte , 0x1c8a, 0x0000 }, -{ FlashManagerControl_wIntegrationStartPosition_MSByte , 0x1c88, 0x0000 }, -{ FlashManagerControl_fOverrideIntegrationStartPosition , 0x1c8a, 0x0000 }, + { FlashManagerControl_wIntegrationStartPosition_MSByte , 0x1c89 ,0x0000}, + { FlashManagerControl_fOverrideIntegrationStartPosition , 0x1c8c ,0x0000}, { FlashManagerControl_fpFlashFiringDelay_us_LSByte , 0x1c90, 0x0000 }, -{ FlashManagerControl_fpFlashFiringDelay_us_MSByte , 0x1c8c, 0x0000 }, -{ FlashManagerControl_bNumberOfPreFlashes , 0x1c8e, 0x0000 }, + { FlashManagerControl_fpFlashFiringDelay_us_MSByte , 0x1c8f ,0x0000}, + { FlashManagerControl_bNumberOfPreFlashes , 0x1c92 ,0x0000}, { FlashManagerControl_fpPulseWidthMainFlash_us_LSByte , 0x1c96, 0x0000 }, -{ FlashManagerControl_fpPulseWidthMainFlash_us_MSByte , 0x1c90, 0x0000 }, + { FlashManagerControl_fpPulseWidthMainFlash_us_MSByte , 0x1c95 ,0x0000}, { FlashManagerControl_fpPulseWidthPreFlash_us_LSByte , 0x1c9a, 0x0000 }, -{ FlashManagerControl_fpPulseWidthPreFlash_us_MSByte , 0x1c92, 0x0000 }, + { FlashManagerControl_fpPulseWidthPreFlash_us_MSByte , 0x1c99 ,0x0000}, { FlashManagerControl_fpTimeBetweenTwoPreFlashes_us_LSByte , 0x1c9e, 0x0000 }, -{ FlashManagerControl_fpTimeBetweenTwoPreFlashes_us_MSByte , 0x1c94, 0x0000 }, + { FlashManagerControl_fpTimeBetweenTwoPreFlashes_us_MSByte , 0x1c9d ,0x0000}, { FlashManagerControl_fpTimeBetweenPreFlashAndMainFlash_us_LSByte , 0x1ca2, 0x0000 }, -{ FlashManagerControl_fpTimeBetweenPreFlashAndMainFlash_us_MSByte , 0x1c96, 0x0000 }, -{ FlashManagerControl_cMainFlashStartFrame , 0x1c98, 0x0000 }, + { FlashManagerControl_fpTimeBetweenPreFlashAndMainFlash_us_MSByte , 0x1ca1 ,0x0000}, + { FlashManagerControl_cMainFlashStartFrame , 0x1ca4 ,0x0000}, + + { FlashManagerControl_wMainFlashStartLine_LSByte , 0x1ca8, 0x0000 }, -{ FlashManagerControl_wMainFlashStartLine_MSByte , 0x1c9a, 0x0000 }, + { FlashManagerControl_wMainFlashStartLine_MSByte , 0x1ca7 ,0x0000}, { FlashManagerControl_wMainFlashStartPixel_LSByte , 0x1cac, 0x0000 }, -{ FlashManagerControl_wMainFlashStartPixel_MSByte , 0x1c9c, 0x0000 }, -{ FlashManagerControl_cPreFlashStartFrame , 0x1c9e, 0x0000 }, + { FlashManagerControl_wMainFlashStartPixel_MSByte , 0x1cab ,0x0000}, + { FlashManagerControl_cPreFlashStartFrame , 0x1cae ,0x0000}, { FlashManagerControl_wPreFlashStartLine_LSByte , 0x1cb2, 0x0000 }, -{ FlashManagerControl_wPreFlashStartLine_MSByte , 0x1ca0, 0x0000 }, + { FlashManagerControl_wPreFlashStartLine_MSByte , 0x1cb1 ,0x0000}, { FlashManagerControl_wPreFlashStartPixel_LSByte , 0x1cb6, 0x0000 }, -{ FlashManagerControl_wPreFlashStartPixel_MSByte , 0x1ca2, 0x0000 }, -{ FlashManagerControl_bTotalFramesRequired , 0x1ca4, 0x0000 }, + { FlashManagerControl_wPreFlashStartPixel_MSByte , 0x1cb5 ,0x0000}, + { FlashManagerControl_bTotalFramesRequired , 0x1cb8 ,0x0000}, + +// page "FlashManagerStatus" [read only] +// { FlashManagerStatus_fFlashSequencePending , 0x1d00, 0x0000 }, { FlashManagerStatus_cNumberFramesRequiredForPreFlashes , 0x1d02, 0x0000 }, { FlashManagerStatus_fpMainFlashPulseWidth_us_LSByte , 0x1d06, 0x0000 }, { FlashManagerStatus_fpMainFlashPulseWidth_us_MSByte , 0x1d05, 0x0000 }, { FlashManagerStatus_fpPreFlashPulseWidth_us_LSByte , 0x1d0a, 0x0000 }, @@ -1569,46 +1778,61 @@ struct nomadik_vpip_param vpip_default_p { FlashManagerStatus_wStartPreFlashPixel_LSByte , 0x1d26, 0x0000 }, { FlashManagerStatus_wStartPreFlashPixel_MSByte , 0x1d25, 0x0000 }, { FlashManagerStatus_cNumberFramesRequired , 0x1d28, 0x0000 }, { FlashManagerStatus_fPreFlashPending , 0x1d2a, 0x0000 }, { FlashManagerStatus_fMainFlashPending , 0x1d2c, 0x0000 }, -{ ExposureControls_bMode , 0x1d80, 0x0000 }, + +// page "ExposureControls" +// + { ExposureControls_bMode , 0x1d80 ,0x00}, + /*{ ExposureControls_bMetering , 0x1d82 ,0x0},*/ { ExposureControls_bMetering , 0x1d82, 0x0002 }, { ExposureControls_bManualExposureTime_s_num , 0x1d84, 0x0000 }, { ExposureControls_bManualExposureTime_s_den , 0x1d86, 0x0000 }, { ExposureControls_fpManualDesiredExposureTime_us_LSByte , 0x1d8a, 0x0000 }, { ExposureControls_fpManualDesiredExposureTime_us_MSByte , 0x1d89, 0x0000 }, { ExposureControls_fpColdStartDesiredTime_us_LSByte , 0x1d8e, 0x0000 }, + /*{ ExposureControls_fpColdStartDesiredTime_us_MSByte , 0x1d8d ,0x0000},*/ { ExposureControls_fpColdStartDesiredTime_us_MSByte , 0x1d8d, 0x59aa }, { ExposureControls_iExposureCompensation , 0x1d90, 0x0000 }, -{ ExposureControls_bMiscSettings , 0x1d92, 0x0000 }, + { ExposureControls_bMiscSettings , 0x1d92 ,0x0}, { ExposureControls_uwDirectModeCoarseIntegration_lines_LSByte , 0x1d96, 0x0000 }, { ExposureControls_uwDirectModeCoarseIntegration_lines_MSByte , 0x1d95, 0x0000 }, { ExposureControls_uwDirectModeFineIntegration_pixels_LSByte , 0x1d9a, 0x0000 }, { ExposureControls_uwDirectModeFineIntegration_pixels_MSByte , 0x1d99, 0x0000 }, { ExposureControls_uwDirectModeCodedAnalogGain_LSByte , 0x1d9e, 0x0000 }, { ExposureControls_uwDirectModeCodedAnalogGain_MSByte , 0x1d9d, 0x0000 }, -{ ExposureControls_fpDirectModeDigitalGain_LSByte , 0x1da2, 0x0000 }, -{ ExposureControls_fpDirectModeDigitalGain_MSByte , 0x1da1, 0x0000 }, + { ExposureControls_fpDirectModeDigitalGain_LSByte , 0x1da2 ,0x0}, + { ExposureControls_fpDirectModeDigitalGain_MSByte , 0x1da1 ,0x0}, { ExposureControls_uwFlashGunModeCoarseIntegration_lines_LSByte , 0x1da6, 0x0000 }, { ExposureControls_uwFlashGunModeCoarseIntegration_lines_MSByte , 0x1da5, 0x0000 }, { ExposureControls_uwFlashGunModeFineIntegration_pixels_LSByte , 0x1daa, 0x0000 }, { ExposureControls_uwFlashGunModeFineIntegration_pixels_MSByte , 0x1da9, 0x0000 }, { ExposureControls_uwFlashGunModeCodedAnalogGain_LSByte , 0x1dae, 0x0000 }, { ExposureControls_uwFlashGunModeCodedAnalogGain_MSByte , 0x1dad, 0x0000 }, { ExposureControls_fpFlashGunModeDigitalGain_LSByte , 0x1db2, 0x0000 }, { ExposureControls_fpFlashGunModeDigitalGain_MSByte , 0x1db1, 0x0000 }, { ExposureControls_fFreezeAutoExposure , 0x1db4, 0x0000 }, { ExposureControls_fpUserMaximumIntegrationTime_us_LSByte , 0x1db8, 0x0000 }, + /*{ ExposureControls_fpUserMaximumIntegrationTime_us_MSByte , 0x1db7 ,0x0000},*/ + { ExposureControls_fpUserMaximumIntegrationTime_us_MSByte , 0x1db7, 0x65d1 }, { ExposureControls_fpRecommendFlashGunAnalogGainThreshold_LSByte , 0x1dbc, 0x0000 }, + /*{ ExposureControls_fpRecommendFlashGunAnalogGainThreshold_MSByte , 0x1dbb ,0x0000}, + { ExposureControls_fEnableHighClipForDesiredExposureTime , 0x1dbe ,0x0000}, + { ExposureControls_bAntiFlickerMode , 0x1dc0 ,0x0000},*/ + { ExposureControls_fpRecommendFlashGunAnalogGainThreshold_MSByte , 0x1dbb, 0x624a }, { ExposureControls_fEnableHighClipForDesiredExposureTime , 0x1dbe, 0x0001 }, { ExposureControls_bAntiFlickerMode , 0x1dc0, 0x0001 }, + { ExposureControls_fInhibitExposurePresetModeForFlash , 0x1dc2, 0x0000 }, -{ ExposureStatus_bAlgorithmStatus , 0x1e00, 0x0000 }, -{ ExposureStatus_bCompilerStatus , 0x1e02, 0x0000 }, + +// page "ExposureStatus" [read only] +// + { ExposureStatus_bAlgorithmStatus , 0x1e00,0x0}, + { ExposureStatus_bCompilerStatus , 0x1e02,0x0}, { ExposureStatus_fWhiteBalanceGainIncludedInCurrentExposure , 0x1e04, 0x0000 }, { ExposureStatus_fBadExposureForIterativeWhiteBalance , 0x1e06, 0x0000 }, { ExposureStatus_uwCoarseIntegrationPending_lines_LSByte , 0x1e0a, 0x0000 }, { ExposureStatus_uwCoarseIntegrationPending_lines_MSByte , 0x1e09, 0x0000 }, { ExposureStatus_uwFineIntegrationPending_pixels_LSByte , 0x1e0e, 0x0000 }, @@ -1628,31 +1852,46 @@ struct nomadik_vpip_param vpip_default_p { ExposureStatus_fpTotalIntegrationTimePending_us_MSByte , 0x1e27, 0x0000 }, { ExposureStatus_uwCodedAnalogGainPending_LSByte , 0x1e2c, 0x0000 }, { ExposureStatus_uwCodedAnalogGainPending_MSByte , 0x1e2b, 0x0000 }, { ExposureStatus_fExposureIsStableforAutoFocus , 0x1e2e, 0x0000 }, { ExposureStatus_bRuntimeExposureTarget , 0x1e30, 0x0000 }, + +// page "ExposureParametersApplied" [read only] +// { ExposureParametersApplied_uwCoarseIntegration_lines_LSByte , 0x1e82, 0x0000 }, { ExposureParametersApplied_uwCoarseIntegration_lines_MSByte , 0x1e81, 0x0000 }, { ExposureParametersApplied_uwFineIntegration_pixels_LSByte , 0x1e86, 0x0000 }, { ExposureParametersApplied_uwFineIntegration_pixels_MSByte , 0x1e85, 0x0000 }, { ExposureParametersApplied_uwCodedAnalogGain_LSByte , 0x1e8a, 0x0000 }, { ExposureParametersApplied_uwCodedAnalogGain_MSByte , 0x1e89, 0x0000 }, { ExposureParametersApplied_fpDigitalGain_LSByte , 0x1e8e, 0x0000 }, { ExposureParametersApplied_fpDigitalGain_MSByte , 0x1e8d, 0x0000 }, + +// page "ExposureStatisticsStatus" [read only] +// { ExposureStatisticsStatus_fpMeanEnergy_LSByte , 0x1f02, 0x0000 }, { ExposureStatisticsStatus_fpMeanEnergy_MSByte , 0x1f01, 0x0000 }, + +// page "ExposureCycleTest" [mode static] +// { ExposureCycleTest_fpInitialDesiredExposureTime_LSByte , 0x1f82, 0x0000 }, { ExposureCycleTest_fpInitialDesiredExposureTime_MSByte , 0x1f81, 0x0000 }, { ExposureCycleTest_fpFinalDesiredExposureTime_LSByte , 0x1f86, 0x0000 }, { ExposureCycleTest_fpFinalDesiredExposureTime_MSByte , 0x1f85, 0x0000 }, { ExposureCycleTest_fpExposureStep_LSByte , 0x1f8a, 0x0000 }, { ExposureCycleTest_fpExposureStep_MSByte , 0x1f89, 0x0000 }, { ExposureCycleTest_bStepDirection , 0x1f8c, 0x0000 }, + +// page "ExposureTestCoin" [mode static] +// { ExposureTestCoin_fTestCoinEnabled , 0x2000, 0x0000 }, { ExposureTestCoin_fRunForTest , 0x2002, 0x0000 }, { ExposureTestCoin_bStatusCoin , 0x2004, 0x0000 }, { ExposureTestCoin_bControlCoin , 0x2006, 0x0000 }, + +// page "ExposureAlgorithmControls" +// { ExposureAlgorithmControls_fpMaximumStep_LSByte , 0x2082, 0x0000 }, { ExposureAlgorithmControls_fpMaximumStep_MSByte , 0x2081, 0x0000 }, { ExposureAlgorithmControls_fpMinimumStep_LSByte , 0x2086, 0x0000 }, { ExposureAlgorithmControls_fpMinimumStep_MSByte , 0x2085, 0x0000 }, { ExposureAlgorithmControls_fpMinimumDesiredExposureTime_us_LSByte , 0x208a, 0x0000 }, @@ -1662,13 +1901,18 @@ struct nomadik_vpip_param vpip_default_p { ExposureAlgorithmControls_fpMaximumNegativeStepThreshold_LSByte , 0x2092, 0x0000 }, { ExposureAlgorithmControls_fpMaximumNegativeStepThreshold_MSByte , 0x2091, 0x0000 }, { ExposureAlgorithmControls_fpRelativeOnTargetStabilityThreshold_LSByte , 0x2096, 0x0000 }, { ExposureAlgorithmControls_fpRelativeOnTargetStabilityThreshold_MSByte , 0x2095, 0x0000 }, { ExposureAlgorithmControls_fpDigitalGainFloor_LSByte , 0x209a, 0x0000 }, + /*{ ExposureAlgorithmControls_fpDigitalGainFloor_MSByte , 0x2099 ,0x0000}, + { ExposureAlgorithmControls_fpDigitalGainCeiling_LSByte , 0x209e ,0x0000}, + { ExposureAlgorithmControls_fpDigitalGainCeiling_MSByte , 0x209d ,0x0000},*/ + { ExposureAlgorithmControls_fpDigitalGainFloor_MSByte , 0x2099, 0x3e00 }, { ExposureAlgorithmControls_fpDigitalGainCeiling_LSByte , 0x209e, 0x0000 }, { ExposureAlgorithmControls_fpDigitalGainCeiling_MSByte , 0x209d, 0x4080 }, + { ExposureAlgorithmControls_fpRelativeIntTimeHysThreshold_LSByte , 0x20a2, 0x0000 }, { ExposureAlgorithmControls_fpRelativeIntTimeHysThreshold_MSByte , 0x20a1, 0x0000 }, { ExposureAlgorithmControls_fpRelativeDigitalGainHysThreshold_LSByte , 0x20a6, 0x0000 }, { ExposureAlgorithmControls_fpRelativeDigitalGainHysThreshold_MSByte , 0x20a5, 0x0000 }, { ExposureAlgorithmControls_fpRelativeCompilationProblemThreshold_LSByte , 0x20aa, 0x0000 }, @@ -1680,53 +1924,103 @@ struct nomadik_vpip_param vpip_default_p { ExposureAlgorithmControls_fpMaximumManualExposureTime_s_LSByte , 0x20b6, 0x0000 }, { ExposureAlgorithmControls_fpMaximumManualExposureTime_s_MSByte , 0x20b5, 0x0000 }, { ExposureAlgorithmControls_fpRelativeStabilityThresholdForAutoFocus_LSByte , 0x20ba, 0x0000 }, { ExposureAlgorithmControls_fpRelativeStabilityThresholdForAutoFocus_MSByte , 0x20b9, 0x0000 }, { ExposureAlgorithmControls_bLeakShift , 0x20bc, 0x0000 }, + +// page "ExposureAlgorithmStatus" [read only] +// { ExposureAlgorithmStatus_fpLeakyEnergy_LSByte , 0x2102, 0x0000 }, { ExposureAlgorithmStatus_fpLeakyEnergy_MSByte , 0x2101, 0x0000 }, { ExposureAlgorithmStatus_fpRelativeStep_LSByte , 0x2106, 0x0000 }, { ExposureAlgorithmStatus_fpRelativeStep_MSByte , 0x2105, 0x0000 }, + +// page "ExposureUpdateErrorControl" +// { ExposureUpdateErrorControl_bMaximumNumberOfFrames , 0x2180, 0x0000 }, + +// page "ExposureUpdateErrorStatus" [read only] +// { ExposureUpdateErrorStatus_bNumberOfForcedInputProcUpdates , 0x2200, 0x0000 }, { ExposureUpdateErrorStatus_bNumberOfConsecutiveDelayedFrames , 0x2202, 0x0000 }, { ExposureUpdateErrorStatus_fForceInputProcUpdation , 0x2204, 0x0000 }, -{ WhiteBalanceControls_bMode , 0x2280, 0x0001 }, + +// page "WhiteBalanceControls" +// + { WhiteBalanceControls_bMode , 0x2280 ,0x1}, { WhiteBalanceControls_bManualRedGain , 0x2282, 0x0000 }, { WhiteBalanceControls_bManualGreenGain , 0x2284, 0x0000 }, { WhiteBalanceControls_bManualBlueGain , 0x2286, 0x0000 }, { WhiteBalanceControls_bMiscSettings , 0x2288, 0x0000 }, { WhiteBalanceControls_fpFlashRedGain_LSByte , 0x228c, 0x0000 }, + /* + { WhiteBalanceControls_fpFlashRedGain_MSByte , 0x228b ,0x0000}, + { WhiteBalanceControls_fpFlashGreenGain_LSByte , 0x2290 ,0x0000}, + { WhiteBalanceControls_fpFlashGreenGain_MSByte , 0x228f ,0x0000}, + { WhiteBalanceControls_fpFlashBlueGain_LSByte , 0x2294 ,0x0000}, + { WhiteBalanceControls_fpFlashBlueGain_MSByte , 0x2293 ,0x0000}, + */ + { WhiteBalanceControls_fpFlashRedGain_MSByte , 0x228b, 0x3e66 }, { WhiteBalanceControls_fpFlashGreenGain_LSByte , 0x2290, 0x0000 }, { WhiteBalanceControls_fpFlashGreenGain_MSByte , 0x228f, 0x3e00 }, { WhiteBalanceControls_fpFlashBlueGain_LSByte , 0x2294, 0x0000 }, { WhiteBalanceControls_fpFlashBlueGain_MSByte , 0x2293, 0x3f0a }, + { WhiteBalanceControls_fInhibitWhiteBalancePresetModeForFlash , 0x2296, 0x0000 }, + +// page "WhiteBalanceAlgorithmControls" +// { WhiteBalanceAlgorithmControls_fpStableTotalStepThreshold_LSByte , 0x2302, 0x0000 }, -{ WhiteBalanceAlgorithmControls_fpStableTotalStepThreshold_MSByte , 0x2301, 0x2c00 }, + { WhiteBalanceAlgorithmControls_fpStableTotalStepThreshold_MSByte , 0x2301 ,0x0000}, { WhiteBalanceAlgorithmControls_fpMinimumRelativeStep_LSByte , 0x2306, 0x0000 }, -{ WhiteBalanceAlgorithmControls_fpMinimumRelativeStep_MSByte , 0x2305, 0x2a00 }, + { WhiteBalanceAlgorithmControls_fpMinimumRelativeStep_MSByte , 0x2305 ,0x0000}, { WhiteBalanceAlgorithmControls_fpMaximumRelativeStep_LSByte , 0x230a, 0x0000 }, -{ WhiteBalanceAlgorithmControls_fpMaximumRelativeStep_MSByte , 0x2309, 0x3800 }, + { WhiteBalanceAlgorithmControls_fpMaximumRelativeStep_MSByte , 0x2309 ,0x0000}, { WhiteBalanceAlgorithmControls_fpStepProportion_LSByte , 0x230e, 0x0000 }, -{ WhiteBalanceAlgorithmControls_fpStepProportion_MSByte , 0x230d, 0x3d00 }, + { WhiteBalanceAlgorithmControls_fpStepProportion_MSByte , 0x230d ,0x0000}, + +// page "WhiteBalanceStatus" [read only] +// { WhiteBalanceStatus_bStatus , 0x2380, 0x0000 }, { WhiteBalanceStatus_fUnityGainsUsed , 0x2382, 0x0000 }, { WhiteBalanceStatus_fpRedGain_LSByte , 0x2386, 0x0000 }, { WhiteBalanceStatus_fpRedGain_MSByte , 0x2385, 0x0000 }, { WhiteBalanceStatus_fpGreenGain_LSByte , 0x238a, 0x0000 }, { WhiteBalanceStatus_fpGreenGain_MSByte , 0x2389, 0x0000 }, { WhiteBalanceStatus_fpBlueGain_LSByte , 0x238e, 0x0000 }, { WhiteBalanceStatus_fpBlueGain_MSByte , 0x238d, 0x0000 }, + +// page "WhiteBalanceStatisticsControls" +// { WhiteBalanceStatisticsControls_bLowThreshold , 0x2400, 0x0000 }, + +// page "WhiteBalanceStatisticsStatus" [read only] +// { WhiteBalanceStatisticsStatus_fpRedEnergy_LSByte , 0x2482, 0x0000 }, { WhiteBalanceStatisticsStatus_fpRedEnergy_MSByte , 0x2481, 0x0000 }, { WhiteBalanceStatisticsStatus_fpGreenEnergy_LSByte , 0x2486, 0x0000 }, { WhiteBalanceStatisticsStatus_fpGreenEnergy_MSByte , 0x2485, 0x0000 }, { WhiteBalanceStatisticsStatus_fpBlueEnergy_LSByte , 0x248a, 0x0000 }, { WhiteBalanceStatisticsStatus_fpBlueEnergy_MSByte , 0x2489, 0x0000 }, + +// page "MinWeightedWBControls" +// + /* + { MinWeightedWBControls_fDisable , 0x2500 ,0x01}, + { MinWeightedWBControls_uwSaturationThreshold_LSByte , 0x2504 ,0x0000}, + { MinWeightedWBControls_uwSaturationThreshold_MSByte , 0x2503 ,0x0000}, + { MinWeightedWBControls_fpRedTiltGain_LSByte , 0x2508 ,0x0000}, + { MinWeightedWBControls_fpRedTiltGain_MSByte , 0x2507 ,0x0000}, + { MinWeightedWBControls_fpGreen1TiltGain_LSByte , 0x250c ,0x0000}, + { MinWeightedWBControls_fpGreen1TiltGain_MSByte , 0x250b ,0x0000}, + { MinWeightedWBControls_fpGreen2TiltGain_LSByte , 0x2510 ,0x0000}, + { MinWeightedWBControls_fpGreen2TiltGain_MSByte , 0x250f ,0x0000}, + { MinWeightedWBControls_fpBlueTiltGain_LSByte , 0x2514 ,0x0000}, + { MinWeightedWBControls_fpBlueTiltGain_MSByte , 0x2513 ,0x0000}, + { MinWeightedWBControls_GreenChannelToAccumulate , 0x2516 ,0x0000}, +*/ { MinWeightedWBControls_fDisable , 0x2500, 0x0000 }, { MinWeightedWBControls_uwSaturationThreshold_LSByte , 0x2504, 0x0000 }, { MinWeightedWBControls_uwSaturationThreshold_MSByte , 0x2503, 0x0300 }, { MinWeightedWBControls_fpRedTiltGain_LSByte , 0x2508, 0x0000 }, { MinWeightedWBControls_fpRedTiltGain_MSByte , 0x2507, 0x3e00 }, @@ -1735,38 +2029,56 @@ struct nomadik_vpip_param vpip_default_p { MinWeightedWBControls_fpGreen2TiltGain_LSByte , 0x2510, 0x0000 }, { MinWeightedWBControls_fpGreen2TiltGain_MSByte , 0x250f, 0x3e40 }, { MinWeightedWBControls_fpBlueTiltGain_LSByte , 0x2514, 0x0000 }, { MinWeightedWBControls_fpBlueTiltGain_MSByte , 0x2513, 0x3e40 }, { MinWeightedWBControls_GreenChannelToAccumulate , 0x2516, 0x0000 }, + +// page "MinWeightedWBStatus" [read only] +// { MinWeightedWBStatus_uwZone_X_Offset_LSByte , 0x2582, 0x0000 }, { MinWeightedWBStatus_uwZone_X_Offset_MSByte , 0x2581, 0x0000 }, { MinWeightedWBStatus_uwZone_Y_Offset_LSByte , 0x2586, 0x0000 }, { MinWeightedWBStatus_uwZone_Y_Offset_MSByte , 0x2585, 0x0000 }, { MinWeightedWBStatus_uwZone_X_Size_LSByte , 0x258a, 0x0000 }, { MinWeightedWBStatus_uwZone_X_Size_MSByte , 0x2589, 0x0000 }, { MinWeightedWBStatus_uwZone_Y_Size_LSByte , 0x258e, 0x0000 }, { MinWeightedWBStatus_uwZone_Y_Size_MSByte , 0x258d, 0x0000 }, { MinWeightedWBStatus_fpNumberMacroPixel_LSByte , 0x2592, 0x0000 }, { MinWeightedWBStatus_fpNumberMacroPixel_MSByte , 0x2591, 0x0000 }, + +// page "MWWBStatisticsStatus" [read only] +// { MWWBStatisticsStatus_fpRedStatistics_LSByte , 0x2602, 0x0000 }, { MWWBStatisticsStatus_fpRedStatistics_MSByte , 0x2601, 0x0000 }, { MWWBStatisticsStatus_fpGreenStatistics_LSByte , 0x2606, 0x0000 }, { MWWBStatisticsStatus_fpGreenStatistics_MSByte , 0x2605, 0x0000 }, { MWWBStatisticsStatus_fpBlueStatistics_LSByte , 0x260a, 0x0000 }, { MWWBStatisticsStatus_fpBlueStatistics_MSByte , 0x2609, 0x0000 }, + +// page "MiscellaneousErrorStatus" [read only] +// { MiscellaneousErrorStatus_bNumberOfEWBStatisticsErrors , 0x2680, 0x0000 }, { MiscellaneousErrorStatus_bEWBStatisticsInterruptCount , 0x2682, 0x0000 }, -{ AutomaticFrameRateControl_bMode , 0x2700, 0x0001 }, -{ AutomaticFrameRateControl_bImpliedGainThresholdLow_num , 0x2702, 0x0001 }, -{ AutomaticFrameRateControl_bImpliedGainThresholdLow_den , 0x2704, 0x0001 }, -{ AutomaticFrameRateControl_bImpliedGainThresholdHigh_num , 0x2706, 0x0003 }, -{ AutomaticFrameRateControl_bImpliedGainThresholdHigh_den , 0x2708, 0x0002 }, -{ AutomaticFrameRateControl_bUserMinimumFrameRate_Hz , 0x270a, 0x000f }, -{ AutomaticFrameRateControl_bUserMaximumFrameRate_Hz , 0x270c, 0x001e }, -{ AutomaticFrameRateControl_bRelativeChange_num , 0x270e, 0x0001 }, -{ AutomaticFrameRateControl_bRelativeChange_den , 0x2710, 0x0008 }, -{ AutomaticFrameRateControl_fDivorceMinFrameRateFromMaxIntegration , 0x2712, 0x0001 }, + +// page "AutomaticFrameRateControl" +// + + { AutomaticFrameRateControl_bMode , 0x2700 ,0x0}, + { AutomaticFrameRateControl_bImpliedGainThresholdLow_num , 0x2702 ,0x0000}, + { AutomaticFrameRateControl_bImpliedGainThresholdLow_den , 0x2704 ,0x0000}, + { AutomaticFrameRateControl_bImpliedGainThresholdHigh_num , 0x2706 ,0x0000}, + { AutomaticFrameRateControl_bImpliedGainThresholdHigh_den , 0x2708 ,0x0000}, + { AutomaticFrameRateControl_bUserMinimumFrameRate_Hz , 0x270a ,0x0000}, + { AutomaticFrameRateControl_bUserMaximumFrameRate_Hz , 0x270c ,0x0000}, + { AutomaticFrameRateControl_bRelativeChange_num , 0x270e ,0x0000}, + { AutomaticFrameRateControl_bRelativeChange_den , 0x2710 ,0x0000}, + { AutomaticFrameRateControl_fDivorceMinFrameRateFromMaxIntegration , 0x2712 ,0x0000}, + + + +// page "AutomaticFrameRateStatus" [read only] +// { AutomaticFrameRateStatus_fpImpliedGain_LSByte , 0x2782, 0x0000 }, { AutomaticFrameRateStatus_fpImpliedGain_MSByte , 0x2781, 0x0000 }, { AutomaticFrameRateStatus_uwMaximumFrameLength_lines_LSByte , 0x2786, 0x0000 }, { AutomaticFrameRateStatus_uwMaximumFrameLength_lines_MSByte , 0x2785, 0x0000 }, { AutomaticFrameRateStatus_uwMinimumFrameLength_lines_LSByte , 0x278a, 0x0000 }, @@ -1779,32 +2091,99 @@ struct nomadik_vpip_param vpip_default_p { AutomaticFrameRateStatus_uwCurrentFrameLength_lines_MSByte , 0x2795, 0x0000 }, { AutomaticFrameRateStatus_uwDesiredFrameLength_lines_LSByte , 0x279a, 0x0000 }, { AutomaticFrameRateStatus_uwDesiredFrameLength_lines_MSByte , 0x2799, 0x0000 }, { AutomaticFrameRateStatus_fAutomaticFrameRateStable , 0x279c, 0x0000 }, { AutomaticFrameRateStatus_fAutomaticFrameRateClip , 0x279e, 0x0000 }, + +// page "StaticFrameRateControl" +// + /* + { StaticFrameRateControl_uwDesiredFrameRate_Num_LSByte ,0x2802,0x0000}, + { StaticFrameRateControl_uwDesiredFrameRate_Num_MSByte ,0x2801,0x7}, + { StaticFrameRateControl_bDesiredFrameRate_Den , 0x2804,0x01}, + */ { StaticFrameRateControl_uwDesiredFrameRate_Num_LSByte , 0x2802, 0x0000 }, { StaticFrameRateControl_uwDesiredFrameRate_Num_MSByte , 0x2802, 0x001e }, { StaticFrameRateControl_bDesiredFrameRate_Den , 0x2804, 0x0001 }, + +// page "StaticFrameRateStatus" [read only] +// { StaticFrameRateStatus_uwRequestedFrameRate_Hz_LSByte , 0x2882, 0x0000 }, { StaticFrameRateStatus_uwRequestedFrameRate_Hz_MSByte , 0x2881, 0x0000 }, { StaticFrameRateStatus_uwMaxFrameRate_Hz_LSByte , 0x2886, 0x0000 }, { StaticFrameRateStatus_uwMaxFrameRate_Hz_MSByte , 0x2885, 0x0000 }, { StaticFrameRateStatus_uwMinFrameRate_Hz_LSByte , 0x288a, 0x0000 }, { StaticFrameRateStatus_uwMinFrameRate_Hz_MSByte , 0x2889, 0x0000 }, { StaticFrameRateStatus_fChangePending , 0x288c, 0x0000 }, { StaticFrameRateStatus_uwRequiredFrameLength_lines_LSByte , 0x2890, 0x0000 }, { StaticFrameRateStatus_uwRequiredFrameLength_lines_MSByte , 0x288f, 0x0000 }, { StaticFrameRateStatus_ClipFrameRate , 0x2892, 0x0000 }, + +// page "ImageStability" [read only] +// { ImageStability_fWhiteBalanceStable , 0x2900, 0x0000 }, { ImageStability_fExposureStable , 0x2902, 0x0000 }, { ImageStability_fFocusStable , 0x2904, 0x0000 }, { ImageStability_fLowPowerStreaming , 0x2906, 0x0000 }, { ImageStability_fStable , 0x2908, 0x0000 }, { ImageStability_fForcedStablility , 0x290a, 0x0000 }, + +// page "ImageStabilityMonitorControl" +// { ImageStabilityMonitorControl_bMaxNumberOfFramesToWaitForStability , 0x2980, 0x0000 }, + +// page "ColdStartManagerControl" +// { ColdStartManagerControl_bControlCoin , 0x2a00, 0x0000 }, + +// page "ColdStartManagerStatus" [read only] +// { ColdStartManagerStatus_bStatusCoin , 0x2a80, 0x0000 }, + +// page "ColourEngine0_ColourMatrixFarSensor" +// +/* + { ColourEngine0_ColourMatrixFarSensor_fpRInR_LSByte , 0x2b02 ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpRInR_MSByte , 0x2b01 ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpGInR_LSByte , 0x2b06 ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpGInR_MSByte , 0x2b05 ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpBInR_LSByte , 0x2b0a ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpBInR_MSByte , 0x2b09 ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpRInG_LSByte , 0x2b0e ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpRInG_MSByte , 0x2b0d ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpGInG_LSByte , 0x2b12 ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpGInG_MSByte , 0x2b11 ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpBInG_LSByte , 0x2b16 ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpBInG_MSByte , 0x2b15 ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpRInB_LSByte , 0x2b1a ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpRInB_MSByte , 0x2b19 ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpGInB_LSByte , 0x2b1e ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpGInB_MSByte , 0x2b1d ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpBInB_LSByte , 0x2b22 ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpBInB_MSByte , 0x2b21 ,0x0000}, + +// page "ColourEngine0_ColourMatrixNearSensor" +// + { ColourEngine0_ColourMatrixNearSensor_fpRInR_LSByte , 0x2b82 ,0x02}, + { ColourEngine0_ColourMatrixNearSensor_fpRInR_MSByte , 0x2b81 ,0x6400}, + { ColourEngine0_ColourMatrixNearSensor_fpGInR_LSByte , 0x2b86 ,0x0002}, + { ColourEngine0_ColourMatrixNearSensor_fpGInR_MSByte , 0x2b85 ,0x6400}, + { ColourEngine0_ColourMatrixNearSensor_fpBInR_LSByte , 0x2b8a ,0x0002}, + { ColourEngine0_ColourMatrixNearSensor_fpBInR_MSByte , 0x2b89 ,0x6400}, + { ColourEngine0_ColourMatrixNearSensor_fpRInG_LSByte , 0x2b8e ,0x0004}, + { ColourEngine0_ColourMatrixNearSensor_fpRInG_MSByte , 0x2b8d ,0xB200}, + { ColourEngine0_ColourMatrixNearSensor_fpGInG_LSByte , 0x2b92 ,0x0004}, + { ColourEngine0_ColourMatrixNearSensor_fpGInG_MSByte , 0x2b91 ,0xB200}, + { ColourEngine0_ColourMatrixNearSensor_fpBInG_LSByte , 0x2b96 ,0x0004}, + { ColourEngine0_ColourMatrixNearSensor_fpBInG_MSByte , 0x2b95 ,0xB200}, + { ColourEngine0_ColourMatrixNearSensor_fpRInB_LSByte , 0x2b9a ,0x0000}, + { ColourEngine0_ColourMatrixNearSensor_fpRInB_MSByte , 0x2b99 ,0xe900}, + { ColourEngine0_ColourMatrixNearSensor_fpGInB_LSByte , 0x2b9e ,0x0000}, + { ColourEngine0_ColourMatrixNearSensor_fpGInB_MSByte , 0x2b9d ,0xe900}, + { ColourEngine0_ColourMatrixNearSensor_fpBInB_LSByte , 0x2ba2 ,0x0000}, + { ColourEngine0_ColourMatrixNearSensor_fpBInB_MSByte , 0x2ba1 ,0xe900}, +*/ { ColourEngine0_ColourMatrixFarSensor_fpRInR_LSByte , 0x2b02, 0x0000 }, { ColourEngine0_ColourMatrixFarSensor_fpRInR_MSByte , 0x2b01, 0x3fd3 }, { ColourEngine0_ColourMatrixFarSensor_fpGInR_LSByte , 0x2b06, 0x0000 }, { ColourEngine0_ColourMatrixFarSensor_fpGInR_MSByte , 0x2b05, 0xbce0 }, { ColourEngine0_ColourMatrixFarSensor_fpBInR_LSByte , 0x2b0a, 0x0000 }, @@ -1819,10 +2198,12 @@ struct nomadik_vpip_param vpip_default_p { ColourEngine0_ColourMatrixFarSensor_fpRInB_MSByte , 0x2b19, 0xb717 }, { ColourEngine0_ColourMatrixFarSensor_fpGInB_LSByte , 0x2b1e, 0x0000 }, { ColourEngine0_ColourMatrixFarSensor_fpGInB_MSByte , 0x2b1d, 0xbd29 }, { ColourEngine0_ColourMatrixFarSensor_fpBInB_LSByte , 0x2b22, 0x0000 }, { ColourEngine0_ColourMatrixFarSensor_fpBInB_MSByte , 0x2b21, 0x3fc6 }, + + { ColourEngine0_ColourMatrixNearSensor_fpRInR_LSByte , 0x2b82, 0x0002 }, { ColourEngine0_ColourMatrixNearSensor_fpRInR_MSByte , 0x2b81, 0x6400 }, { ColourEngine0_ColourMatrixNearSensor_fpGInR_LSByte , 0x2b86, 0x0002 }, { ColourEngine0_ColourMatrixNearSensor_fpGInR_MSByte , 0x2b85, 0x6400 }, { ColourEngine0_ColourMatrixNearSensor_fpBInR_LSByte , 0x2b8a, 0x0002 }, @@ -1837,10 +2218,13 @@ struct nomadik_vpip_param vpip_default_p { ColourEngine0_ColourMatrixNearSensor_fpRInB_MSByte , 0x2b99, 0xe900 }, { ColourEngine0_ColourMatrixNearSensor_fpGInB_LSByte , 0x2b9e, 0x0000 }, { ColourEngine0_ColourMatrixNearSensor_fpGInB_MSByte , 0x2b9d, 0xe900 }, { ColourEngine0_ColourMatrixNearSensor_fpBInB_LSByte , 0x2ba2, 0x0000 }, { ColourEngine0_ColourMatrixNearSensor_fpBInB_MSByte , 0x2ba1, 0xe900 }, + +// page "ColourEngine0_ColourMatrixDamped" [read only] +// { ColourEngine0_ColourMatrixDamped_wRInR_LSByte , 0x2c02, 0x0000 }, { ColourEngine0_ColourMatrixDamped_wRInR_MSByte , 0x2c01, 0x0000 }, { ColourEngine0_ColourMatrixDamped_wGInR_LSByte , 0x2c06, 0x0000 }, { ColourEngine0_ColourMatrixDamped_wGInR_MSByte , 0x2c05, 0x0000 }, { ColourEngine0_ColourMatrixDamped_wBInR_LSByte , 0x2c0a, 0x0000 }, @@ -1855,17 +2239,53 @@ struct nomadik_vpip_param vpip_default_p { ColourEngine0_ColourMatrixDamped_wRInB_MSByte , 0x2c19, 0x0000 }, { ColourEngine0_ColourMatrixDamped_wGInB_LSByte , 0x2c1e, 0x0000 }, { ColourEngine0_ColourMatrixDamped_wGInB_MSByte , 0x2c1d, 0x0000 }, { ColourEngine0_ColourMatrixDamped_wBInB_LSByte , 0x2c22, 0x0000 }, { ColourEngine0_ColourMatrixDamped_wBInB_MSByte , 0x2c21, 0x0000 }, + +// page "ColourEngine0_ColourMatrixDamperControl" +// + /* + { ColourEngine0_ColourMatrixDamperControl_fDisableMatrixDamping , 0x2c80 ,0x1},//hardcoded used at two places..in update service it can be changed + { ColourEngine0_ColourMatrixDamperControl_DamperLowThreshold_LSByte , 0x2c84 ,0x0000}, + { ColourEngine0_ColourMatrixDamperControl_DamperLowThreshold_MSByte , 0x2c83 ,0x0000}, + { ColourEngine0_ColourMatrixDamperControl_DamperHighThreshold_LSByte , 0x2c88,0x0000}, + { ColourEngine0_ColourMatrixDamperControl_DamperHighThreshold_MSByte , 0x2c87,0x0000}, + { ColourEngine0_ColourMatrixDamperControl_MinimumDamperOutput_LSByte , 0x2c8c,0x0000}, + { ColourEngine0_ColourMatrixDamperControl_MinimumDamperOutput_MSByte , 0x2c8b,0x0000}, + */ { ColourEngine0_ColourMatrixDamperControl_fDisableMatrixDamping , 0x2c80, 0x0000 }, { ColourEngine0_ColourMatrixDamperControl_DamperLowThreshold_LSByte , 0x2c84, 0x0000 }, { ColourEngine0_ColourMatrixDamperControl_DamperLowThreshold_MSByte , 0x2c83, 0x62ac }, { ColourEngine0_ColourMatrixDamperControl_DamperHighThreshold_LSByte , 0x2c88, 0x0000 }, { ColourEngine0_ColourMatrixDamperControl_DamperHighThreshold_MSByte , 0x2c87, 0x64ac }, { ColourEngine0_ColourMatrixDamperControl_MinimumDamperOutput_LSByte , 0x2c8c, 0x0000 }, { ColourEngine0_ColourMatrixDamperControl_MinimumDamperOutput_MSByte , 0x2c8b, 0x0000 }, + +// page "ColourEngine0_ApertureCorrectionControls" +// +/* + { ColourEngine0_ApertureCorrectionControls_fDisableCorrection , 0x2d00 ,0x1}, + { ColourEngine0_ApertureCorrectionControls_bMaxGain , 0x2d02 ,0x15}, + { ColourEngine0_ApertureCorrectionControls_fDisableGainDamping , 0x2d04 ,0x1}, + { ColourEngine0_ApertureCorrectionControls_DamperLowThreshold_Gain_LSByte , 0x2d08 ,0x0000}, + { ColourEngine0_ApertureCorrectionControls_DamperLowThreshold_Gain_MSByte , 0x2d07 ,0x0000}, + { ColourEngine0_ApertureCorrectionControls_DamperHighThreshold_Gain_LSByte , 0x2d0c ,0x0000}, + { ColourEngine0_ApertureCorrectionControls_DamperHighThreshold_Gain_MSByte , 0x2d0b ,0x0000}, + { ColourEngine0_ApertureCorrectionControls_MinimumDamperOutput_Gain_LSByte , 0x2d10 ,0x0000}, + { ColourEngine0_ApertureCorrectionControls_MinimumDamperOutput_Gain_MSByte , 0x2d0f ,0x0000}, + { ColourEngine0_ApertureCorrectionControls_bMinimumCoringThreshold , 0x2d12 ,0x15}, + { ColourEngine0_ApertureCorrectionControls_fDisableCoringDamping , 0x2d14 ,0x1}, + { ColourEngine0_ApertureCorrectionControls_bMinimumHighThreshold , 0x2d16,0x0000}, + { ColourEngine0_ApertureCorrectionControls_DamperLowThreshold_Coring_LSByte , 0x2d1a ,0x0000}, + { ColourEngine0_ApertureCorrectionControls_DamperLowThreshold_Coring_MSByte , 0x2d19 ,0x0000}, + { ColourEngine0_ApertureCorrectionControls_DamperHighThreshold_Coring_LSByte , 0x2d1e ,0x0000}, + { ColourEngine0_ApertureCorrectionControls_DamperHighThreshold_Coring_MSByte , 0x2d1d ,0x0000}, + { ColourEngine0_ApertureCorrectionControls_MinimumDamperOutput_Coring_LSByte , 0x2d22 ,0x0000}, + { ColourEngine0_ApertureCorrectionControls_MinimumDamperOutput_Coring_MSByte , 0x2d21 ,0x0000}, +*/ + { ColourEngine0_ApertureCorrectionControls_fDisableCorrection , 0x2d00, 0x0000 }, { ColourEngine0_ApertureCorrectionControls_bMaxGain , 0x2d02, 0x0010 }, { ColourEngine0_ApertureCorrectionControls_fDisableGainDamping , 0x2d04, 0x0000 }, { ColourEngine0_ApertureCorrectionControls_DamperLowThreshold_Gain_LSByte , 0x2d08, 0x0000 }, { ColourEngine0_ApertureCorrectionControls_DamperLowThreshold_Gain_MSByte , 0x2d07, 0x5871 }, @@ -1880,21 +2300,53 @@ struct nomadik_vpip_param vpip_default_p { ColourEngine0_ApertureCorrectionControls_DamperLowThreshold_Coring_MSByte , 0x2d19, 0x5871 }, { ColourEngine0_ApertureCorrectionControls_DamperHighThreshold_Coring_LSByte , 0x2d1e, 0x0000 }, { ColourEngine0_ApertureCorrectionControls_DamperHighThreshold_Coring_MSByte , 0x2d1d, 0x63d1 }, { ColourEngine0_ApertureCorrectionControls_MinimumDamperOutput_Coring_LSByte , 0x2d22, 0x0000 }, { ColourEngine0_ApertureCorrectionControls_MinimumDamperOutput_Coring_MSByte , 0x2d21, 0x3a00 }, + +// page "ColourEngine0_ApertureCorrectionStatus" [read only] +// { ColourEngine0_ApertureCorrectionStatus_bGain , 0x2d80, 0x0000 }, { ColourEngine0_ApertureCorrectionStatus_HighThreshold , 0x2d82, 0x0000 }, { ColourEngine0_ApertureCorrectionStatus_CoringThreshold , 0x2d84, 0x0000 }, + +// page "ColourEngine0_GammaCorrection" +// + /* + { ColourEngine0_GammaCorrection_fEnabled , 0x2e00 ,0x0000}, + { ColourEngine0_GammaCorrection_bMode , 0x2e02 ,0x0000}, + { ColourEngine0_GammaCorrection_SharpRed , 0x2e04 ,0x0000}, + { ColourEngine0_GammaCorrection_SharpGreen , 0x2e06 ,0x0000}, + { ColourEngine0_GammaCorrection_SharpBlue , 0x2e08 ,0x0000}, + { ColourEngine0_GammaCorrection_SoftRed , 0x2e0a ,0x0000}, + { ColourEngine0_GammaCorrection_SoftGreen , 0x2e0c ,0x0000}, + { ColourEngine0_GammaCorrection_SoftBlue , 0x2e0e ,0x0000}, +*/ { ColourEngine0_GammaCorrection_fEnabled , 0x2e00, 0x0001 }, { ColourEngine0_GammaCorrection_bMode , 0x2e02, 0x0001 }, { ColourEngine0_GammaCorrection_SharpRed , 0x2e04, 0x0013 }, { ColourEngine0_GammaCorrection_SharpGreen , 0x2e06, 0x0013 }, { ColourEngine0_GammaCorrection_SharpBlue , 0x2e08, 0x0013 }, { ColourEngine0_GammaCorrection_SoftRed , 0x2e0a, 0x0013 }, { ColourEngine0_GammaCorrection_SoftGreen , 0x2e0c, 0x0013 }, { ColourEngine0_GammaCorrection_SoftBlue , 0x2e0e, 0x0013 }, +// page "NoraControls" +// + /* + { NoraControls_fDisable , 0x2e80 ,0x00}, + { NoraControls_fDisableNoraPromoting , 0x2e82 ,0x1}, + { NoraControls_bMaximumValue , 0x2e84 ,0x0}, + { NoraControls_fDifferentTextureDegreeForBlue , 0x2e86 ,0x0000}, + { NoraControls_fSplitNoiseLevel , 0x2e88 ,0x0000}, + { NoraControls_fTightGreenMatrix , 0x2e8a ,0x0000}, + { NoraControls_DamperLowThreshold_LSByte , 0x2e8e ,0x0000}, + { NoraControls_DamperLowThreshold_MSByte , 0x2e8d ,0x0000}, + { NoraControls_DamperHighThreshold_LSByte , 0x2e92 ,0x0000}, + { NoraControls_DamperHighThreshold_MSByte , 0x2e91 ,0x0000}, + { NoraControls_MinimumDamperOutput_LSByte , 0x2e96 ,0x0000}, + { NoraControls_MinimumDamperOutput_MSByte , 0x2e95 ,0x0000}, + */ { NoraControls_fDisable , 0x2e80, 0x0001 }, { NoraControls_fDisableNoraPromoting , 0x2e82, 0x0000 }, { NoraControls_bMaximumValue , 0x2e84, 0x0001 }, { NoraControls_fDifferentTextureDegreeForBlue , 0x2e86, 0x0000 }, { NoraControls_fSplitNoiseLevel , 0x2e88, 0x0000 }, @@ -1903,11 +2355,37 @@ struct nomadik_vpip_param vpip_default_p { NoraControls_DamperLowThreshold_MSByte , 0x2e8d, 0x4000 }, { NoraControls_DamperHighThreshold_LSByte , 0x2e92, 0x0000 }, { NoraControls_DamperHighThreshold_MSByte , 0x2e91, 0x4500 }, { NoraControls_MinimumDamperOutput_LSByte , 0x2e96, 0x0000 }, { NoraControls_MinimumDamperOutput_MSByte , 0x2e95, 0x0000 }, + +// page "NoraStatus" [read only] +// { NoraStatus_bNoraValue , 0x2f00, 0x0000 }, + +// page "ScytheFilterControls" +// + /* + { ScytheFilterControls_fDisableFilter , 0x2f80 ,0x0}, + { ScytheFilterControls_fSquareLaw , 0x2f82 ,0x0}, + { ScytheFilterControls_fDisablePromotingLow , 0x2f84 ,0x1}, + { ScytheFilterControls_fDisablePromotingHigh , 0x2f86 ,0x1}, + { ScytheFilterControls_bMaxWeightLow , 0x2f88 ,0x16}, + { ScytheFilterControls_bMaxWeightHigh , 0x2f8a ,0x16}, + { ScytheFilterControls_fpDamperLowThresholdLow_LSByte , 0x2f8e ,0x0000}, + { ScytheFilterControls_fpDamperLowThresholdLow_MSByte , 0x2f8d ,0x0000}, + { ScytheFilterControls_fpDamperLowThresholdHigh_LSByte , 0x2f92 ,0x0000}, + { ScytheFilterControls_fpDamperLowThresholdHigh_MSByte , 0x2f91 ,0x0000}, + { ScytheFilterControls_fpDamperHighThresholdLow_LSByte , 0x2f96 ,0x0000}, + { ScytheFilterControls_fpDamperHighThresholdLow_MSByte , 0x2f95 ,0x0000}, + { ScytheFilterControls_fpDamperHighThresholdHigh_LSByte , 0x2f9a ,0x0000}, + { ScytheFilterControls_fpDamperHighThresholdHigh_MSByte , 0x2f99 ,0x0000}, + { ScytheFilterControls_fpMinimumDamperOutputLow_LSByte , 0x2f9e ,0x0000}, + { ScytheFilterControls_fpMinimumDamperOutputLow_MSByte , 0x2f9d ,0x0000}, + { ScytheFilterControls_fpMinimumDamperOutputHigh_LSByte , 0x2fa2 ,0x0000}, + { ScytheFilterControls_fpMinimumDamperOutputHigh_MSByte , 0x2fa1 ,0x0000}, + */ { ScytheFilterControls_fDisableFilter , 0x2f80, 0x0000 }, { ScytheFilterControls_fSquareLaw , 0x2f82, 0x0000 }, { ScytheFilterControls_fDisablePromotingLow , 0x2f84, 0x0000 }, { ScytheFilterControls_fDisablePromotingHigh , 0x2f86, 0x0000 }, { ScytheFilterControls_bMaxWeightLow , 0x2f88, 0x0010 }, @@ -1922,10 +2400,33 @@ struct nomadik_vpip_param vpip_default_p { ScytheFilterControls_fpDamperHighThresholdHigh_MSByte , 0x2f99, 0x68dc }, { ScytheFilterControls_fpMinimumDamperOutputLow_LSByte , 0x2f9e, 0x0000 }, { ScytheFilterControls_fpMinimumDamperOutputLow_MSByte , 0x2f9d, 0x3a00 }, { ScytheFilterControls_fpMinimumDamperOutputHigh_LSByte , 0x2fa2, 0x0000 }, { ScytheFilterControls_fpMinimumDamperOutputHigh_MSByte , 0x2fa1, 0x3a00 }, + +// page "JackFilterControls" +// + /* + { JackFilterControls_fDisableFilter , 0x3000 ,0x0000 }, + { JackFilterControls_fSquareLaw , 0x3002 ,0x0000 }, + { JackFilterControls_fDisablePromotingLow , 0x3004 ,0x0000 }, + { JackFilterControls_fDisablePromotingHigh , 0x3006 ,0x0000 }, + { JackFilterControls_bMaxWeightLow , 0x3008 ,0x0010 }, + { JackFilterControls_bMaxWeightHigh , 0x300a ,0x0010 }, + { JackFilterControls_fpDamperLowThresholdLow_LSByte , 0x300e ,0x0000 }, + { JackFilterControls_fpDamperLowThresholdLow_MSByte , 0x300d ,0x63d1 }, + { JackFilterControls_fpDamperLowThresholdHigh_LSByte , 0x3012 ,0x0000 }, + { JackFilterControls_fpDamperLowThresholdHigh_MSByte , 0x3011 ,0x63d1 }, + { JackFilterControls_fpDamperHighThresholdLow_LSByte , 0x3016 ,0x0000 }, + { JackFilterControls_fpDamperHighThresholdLow_MSByte , 0x3015 ,0x68dc }, + { JackFilterControls_fpDamperHighThresholdHigh_LSByte , 0x301a ,0x0000 }, + { JackFilterControls_fpDamperHighThresholdHigh_MSByte , 0x3019 ,0x68dc }, + { JackFilterControls_fpMinimumDamperOutputLow_LSByte , 0x301e ,0x0000 }, + { JackFilterControls_fpMinimumDamperOutputLow_MSByte , 0x301d ,0x0000 }, + { JackFilterControls_fpMinimumDamperOutputHigh_LSByte , 0x3022 ,0x0000 }, + { JackFilterControls_fpMinimumDamperOutputHigh_MSByte , 0x3021 ,0x0000 }, + */ { JackFilterControls_fDisableFilter , 0x3000, 0x0000 }, { JackFilterControls_fSquareLaw , 0x3002, 0x0000 }, { JackFilterControls_fDisablePromotingLow , 0x3004, 0x0000 }, { JackFilterControls_fDisablePromotingHigh , 0x3006, 0x0000 }, { JackFilterControls_bMaxWeightLow , 0x3008, 0x0010 }, @@ -1940,103 +2441,208 @@ struct nomadik_vpip_param vpip_default_p { JackFilterControls_fpDamperHighThresholdHigh_MSByte , 0x3019, 0x68dc }, { JackFilterControls_fpMinimumDamperOutputLow_LSByte , 0x301e, 0x0000 }, { JackFilterControls_fpMinimumDamperOutputLow_MSByte , 0x301d, 0x0000 }, { JackFilterControls_fpMinimumDamperOutputHigh_LSByte , 0x3022, 0x0000 }, { JackFilterControls_fpMinimumDamperOutputHigh_MSByte , 0x3021, 0x0000 }, + +// page "ScytheAndJackFilterStatus" [read only] +// { ScytheAndJackFilterStatus_bScytheWeightLo , 0x3080, 0x0000 }, { ScytheAndJackFilterStatus_bScytheWeightHi , 0x3082, 0x0000 }, { ScytheAndJackFilterStatus_bJackWeightLo , 0x3084, 0x0000 }, { ScytheAndJackFilterStatus_bJackWeightHi , 0x3086, 0x0000 }, + +// page "VfpnControls" +// + /* + { VfpnControls_fEnableCorrection , 0x3100,0x0000},//tobe hardcoded + { VfpnControls_uwMaximumPixelValue_LSByte , 0x3104,0x0000}, + { VfpnControls_uwMaximumPixelValue_MSByte , 0x3103,0x3ff}, + { VfpnControls_uwMinimumPixelValue_LSByte , 0x3108,0x0000}, + { VfpnControls_uwMinimumPixelValue_MSByte , 0x3107,0x00}, + { VfpnControls_uwPixelSaturationLevel_LSByte , 0x310c,0x0000}, + { VfpnControls_uwPixelSaturationLevel_MSByte , 0x310b,0x3ff}, + { VfpnControls_bLogThreshLog , 0x310e,0x4}, */ { VfpnControls_fEnableCorrection , 0x3100, 0x0000 }, { VfpnControls_uwMaximumPixelValue_LSByte , 0x3104, 0x0000 }, { VfpnControls_uwMaximumPixelValue_MSByte , 0x3103, 0x03ff }, { VfpnControls_uwMinimumPixelValue_LSByte , 0x3108, 0x0000 }, { VfpnControls_uwMinimumPixelValue_MSByte , 0x3107, 0x0000 }, { VfpnControls_uwPixelSaturationLevel_LSByte , 0x310c, 0x0000 }, { VfpnControls_uwPixelSaturationLevel_MSByte , 0x310b, 0x03ff }, { VfpnControls_bLogThreshLog , 0x310e, 0x0004 }, + +// page "VfpnStatus" [read only] +// { VfpnStatus_fLowPowerStreaming , 0x3180, 0x0000 }, { VfpnStatus_fVfpnGainChanged , 0x3182, 0x0000 }, { VfpnStatus_bNumberOfBlackLines , 0x3184, 0x0000 }, { VfpnStatus_uwNumberOfActivePixels_LSByte , 0x3188, 0x0000 }, { VfpnStatus_uwNumberOfActivePixels_MSByte , 0x3187, 0x0000 }, -{ AntiVignetteControls_fDisableFilter , 0x3200, 0x0000 }, + +// page "AntiVignetteControls" +// + + { AntiVignetteControls_fDisableFilter , 0x3200 ,0x0000 }, // 0x00 + { AntiVignetteControls_bFilterCoeff_R2_r , 0x3202 ,0x0000 }, // 0x0000 + { AntiVignetteControls_bFilterCoeff_R2_gr , 0x3204 ,0x0080 }, // 0x0000 + { AntiVignetteControls_bFilterCoeff_R2_gb , 0x3206 ,0x0080 }, // 0x0000 + { AntiVignetteControls_bFilterCoeff_R2_b , 0x3208 ,0x0000 }, // 0x0000 + { AntiVignetteControls_bFilterCoeff_R4_r , 0x320a ,0x0000 }, // 0x0000 + { AntiVignetteControls_bFilterCoeff_R4_gr , 0x320c ,0x0000 }, // 0x0000 + { AntiVignetteControls_bFilterCoeff_R4_gb , 0x320e ,0x0000 }, // 0x0000 + { AntiVignetteControls_bFilterCoeff_R4_b , 0x3210 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwHorizontalOffset_LSByte , 0x3214 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwHorizontalOffset_MSByte , 0x3213 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwVerticalOffset_LSByte , 0x3218 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwVerticalOffset_MSByte , 0x3217 ,0x0000 }, // 0x0000 + { AntiVignetteControls_fAVOffsetSeperateFor4Channels , 0x321a ,0x0001 }, // 0x0000 + { AntiVignetteControls_bShiftFix_R2 , 0x321c ,0x0012 }, // 0x0000 + { AntiVignetteControls_uwHorizontalOffset_r_LSByte , 0x3220 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwHorizontalOffset_r_MSByte , 0x321f ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwHorizontalOffset_gr_LSByte , 0x3224 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwHorizontalOffset_gr_MSByte , 0x3223 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwHorizontalOffset_gb_LSByte , 0x3228 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwHorizontalOffset_gb_MSByte , 0x3227 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwHorizontalOffset_b_LSByte , 0x322c ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwHorizontalOffset_b_MSByte , 0x322b ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwVerticalOffset_r_LSByte , 0x3230 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwVerticalOffset_r_MSByte , 0x322f ,0x002f }, // 0x0000 + { AntiVignetteControls_uwVerticalOffset_gr_LSByte , 0x3234 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwVerticalOffset_gr_MSByte , 0x3233 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwVerticalOffset_gb_LSByte , 0x3238 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwVerticalOffset_gb_MSByte , 0x3237 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwVerticalOffset_b_LSByte , 0x323c ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwVerticalOffset_b_MSByte , 0x323b ,0x0000 }, // 0x0000 + { AntiVignetteControls_bUnityOffset_r , 0x323e ,0x0040 }, // 0x0000 + { AntiVignetteControls_bUnityOffset_gr , 0x3240 ,0x0040 }, // 0x0000 + { AntiVignetteControls_bUnityOffset_gb , 0x3242 ,0x0040 }, // 0x0000 + { AntiVignetteControls_bUnityOffset_b , 0x3244 ,0x0040 }, // 0x0000 + { AntiVignetteControls_fAdaptiveAntiVignetteEnable , 0x3246 ,0x0001 }, // 0x0000 + + + /* + { AntiVignetteControls_fDisableFilter , 0x3200 ,0x00}, { AntiVignetteControls_bFilterCoeff_R2_r , 0x3202, 0x0000 }, -{ AntiVignetteControls_bFilterCoeff_R2_gr , 0x3204, 0x0080 }, -{ AntiVignetteControls_bFilterCoeff_R2_gb , 0x3206, 0x0080 }, + { AntiVignetteControls_bFilterCoeff_R2_gr , 0x3204 ,0x0000}, + { AntiVignetteControls_bFilterCoeff_R2_gb , 0x3206 ,0x0000}, { AntiVignetteControls_bFilterCoeff_R2_b , 0x3208, 0x0000 }, { AntiVignetteControls_bFilterCoeff_R4_r , 0x320a, 0x0000 }, { AntiVignetteControls_bFilterCoeff_R4_gr , 0x320c, 0x0000 }, { AntiVignetteControls_bFilterCoeff_R4_gb , 0x320e, 0x0000 }, { AntiVignetteControls_bFilterCoeff_R4_b , 0x3210, 0x0000 }, { AntiVignetteControls_uwHorizontalOffset_LSByte , 0x3214, 0x0000 }, { AntiVignetteControls_uwHorizontalOffset_MSByte , 0x3213, 0x0000 }, { AntiVignetteControls_uwVerticalOffset_LSByte , 0x3218, 0x0000 }, { AntiVignetteControls_uwVerticalOffset_MSByte , 0x3217, 0x0000 }, -{ AntiVignetteControls_fAVOffsetSeperateFor4Channels , 0x321a, 0x0001 }, -{ AntiVignetteControls_bShiftFix_R2 , 0x321c, 0x0012 }, + { AntiVignetteControls_fAVOffsetSeperateFor4Channels , 0x321a ,0x0000}, + { AntiVignetteControls_bShiftFix_R2 , 0x321c ,0x0000}, { AntiVignetteControls_uwHorizontalOffset_r_LSByte , 0x3220, 0x0000 }, { AntiVignetteControls_uwHorizontalOffset_r_MSByte , 0x321f, 0x0000 }, { AntiVignetteControls_uwHorizontalOffset_gr_LSByte , 0x3224, 0x0000 }, { AntiVignetteControls_uwHorizontalOffset_gr_MSByte , 0x3223, 0x0000 }, { AntiVignetteControls_uwHorizontalOffset_gb_LSByte , 0x3228, 0x0000 }, { AntiVignetteControls_uwHorizontalOffset_gb_MSByte , 0x3227, 0x0000 }, { AntiVignetteControls_uwHorizontalOffset_b_LSByte , 0x322c, 0x0000 }, { AntiVignetteControls_uwHorizontalOffset_b_MSByte , 0x322b, 0x0000 }, { AntiVignetteControls_uwVerticalOffset_r_LSByte , 0x3230, 0x0000 }, -{ AntiVignetteControls_uwVerticalOffset_r_MSByte , 0x3200, 0x002f }, + { AntiVignetteControls_uwVerticalOffset_r_MSByte , 0x322f ,0x0000}, { AntiVignetteControls_uwVerticalOffset_gr_LSByte , 0x3234, 0x0000 }, { AntiVignetteControls_uwVerticalOffset_gr_MSByte , 0x3233, 0x0000 }, { AntiVignetteControls_uwVerticalOffset_gb_LSByte , 0x3238, 0x0000 }, { AntiVignetteControls_uwVerticalOffset_gb_MSByte , 0x3237, 0x0000 }, { AntiVignetteControls_uwVerticalOffset_b_LSByte , 0x323c, 0x0000 }, { AntiVignetteControls_uwVerticalOffset_b_MSByte , 0x323b, 0x0000 }, -{ AntiVignetteControls_bUnityOffset_r , 0x323e, 0x0040 }, -{ AntiVignetteControls_bUnityOffset_gr , 0x3240, 0x0040 }, -{ AntiVignetteControls_bUnityOffset_gb , 0x3242, 0x0040 }, -{ AntiVignetteControls_bUnityOffset_b , 0x3244, 0x0040 }, -{ AntiVignetteControls_fAdaptiveAntiVignetteEnable , 0x3246, 0x0001 }, + { AntiVignetteControls_bUnityOffset_r , 0x323e ,0x0000}, + { AntiVignetteControls_bUnityOffset_gr , 0x3240 ,0x0000}, + { AntiVignetteControls_bUnityOffset_gb , 0x3242 ,0x0000}, + { AntiVignetteControls_bUnityOffset_b , 0x3244 ,0x0000}, + { AntiVignetteControls_fAdaptiveAntiVignetteEnable , 0x3246 ,0x0000}, + */ + +// page "AntiVignetteStatus" [read only] +// { AntiVignetteStatus_fXScaleEnabled , 0x3280, 0x0000 }, { AntiVignetteStatus_bXScale , 0x3282, 0x0000 }, { AntiVignetteStatus_fYScaleEnabled , 0x3284, 0x0000 }, { AntiVignetteStatus_bYScale , 0x3286, 0x0000 }, { AntiVignetteStatus_uwHorizontalSize_LSByte , 0x328a, 0x0000 }, { AntiVignetteStatus_uwHorizontalSize_MSByte , 0x3289, 0x0000 }, { AntiVignetteStatus_uwVerticalSize_LSByte , 0x328e, 0x0000 }, { AntiVignetteStatus_uwVerticalSize_MSByte , 0x328d, 0x0000 }, -{ ColourEngine0_RadialApertureCorrectionControl_fEnableCorrection , 0x3300, 0x0000 }, + +// page "ColourEngine0_RadialApertureCorrectionControl" +// + + { ColourEngine0_RadialApertureCorrectionControl_fEnableCorrection , 0x3300 ,0x1}, + +// page "ColourEngine0_RadialApertureCorrectionHostInputs" +// + + { ColourEngine0_RadialApertureCorrectionHostInputs_bQvec0 , 0x3380 ,0x0000}, + { ColourEngine0_RadialApertureCorrectionHostInputs_bQvec1 , 0x3382 ,0x0000}, + { ColourEngine0_RadialApertureCorrectionHostInputs_bCofShift , 0x3384 ,0x0000}, + { ColourEngine0_RadialApertureCorrectionHostInputs_bOutShift , 0x3386 ,0x0000}, + { ColourEngine0_RadialApertureCorrectionHostInputs_uwUnity_LSByte , 0x338a ,0x0000}, + { ColourEngine0_RadialApertureCorrectionHostInputs_uwUnity_MSByte , 0x3389 ,0x0000}, + + //{ ColourEngine0_RadialApertureCorrectionControl_fEnableCorrection , 0x3300, 0x0000 }, + +/* { ColourEngine0_RadialApertureCorrectionHostInputs_bQvec0 , 0x3380, 0x0010 }, { ColourEngine0_RadialApertureCorrectionHostInputs_bQvec1 , 0x3382, 0x003f }, { ColourEngine0_RadialApertureCorrectionHostInputs_bCofShift , 0x3384, 0x0000 }, { ColourEngine0_RadialApertureCorrectionHostInputs_bOutShift , 0x3386, 0x0003 }, { ColourEngine0_RadialApertureCorrectionHostInputs_uwUnity_LSByte , 0x338a, 0x0000 }, { ColourEngine0_RadialApertureCorrectionHostInputs_uwUnity_MSByte , 0x3389, 0x0001 }, +*/ + +// page "ColourEngine0_RadialApertureCorrectionApplicationInputs" [read only] +// { ColourEngine0_RadialApertureCorrectionApplicationInputs_uwHOffset_LSByte , 0x3402, 0x0000 }, { ColourEngine0_RadialApertureCorrectionApplicationInputs_uwHOffset_MSByte , 0x3401, 0x0000 }, { ColourEngine0_RadialApertureCorrectionApplicationInputs_uwVOffset_LSByte , 0x3406, 0x0000 }, { ColourEngine0_RadialApertureCorrectionApplicationInputs_uwVOffset_MSByte , 0x3405, 0x0000 }, { ColourEngine0_RadialApertureCorrectionApplicationInputs_uwHScalingFactor_LSByte , 0x340a, 0x0000 }, { ColourEngine0_RadialApertureCorrectionApplicationInputs_uwHScalingFactor_MSByte , 0x3409, 0x0000 }, { ColourEngine0_RadialApertureCorrectionApplicationInputs_uwVScalingFactor_LSByte , 0x340e, 0x0000 }, { ColourEngine0_RadialApertureCorrectionApplicationInputs_uwVScalingFactor_MSByte , 0x340d, 0x0000 }, + +// page "ColourEngine0_OutputCoderControls" +// + { ColourEngine0_OutputCoderControls_TransformType , 0x3480, 0x00}, + { ColourEngine0_OutputCoderControls_bContrast , 0x3482, 0x64}, + { ColourEngine0_OutputCoderControls_bColourSaturation , 0x3484, 0x64}, + +/* { ColourEngine0_OutputCoderControls_TransformType , 0x3480, 0x0001 }, { ColourEngine0_OutputCoderControls_bContrast , 0x3482, 0x0064 }, { ColourEngine0_OutputCoderControls_bColourSaturation , 0x3484, 0x0069 }, +*/ + +// page "ColourEngine0_CoderOutputSignalRange" +// { ColourEngine0_CoderOutputSignalRange_uwLumaExcursion_LSByte , 0x3502, 0x0000 }, { ColourEngine0_CoderOutputSignalRange_uwLumaExcursion_MSByte , 0x3501, 0x0000 }, { ColourEngine0_CoderOutputSignalRange_uwLumaMidpointTimes2_LSByte , 0x3506, 0x0000 }, { ColourEngine0_CoderOutputSignalRange_uwLumaMidpointTimes2_MSByte , 0x3505, 0x0000 }, { ColourEngine0_CoderOutputSignalRange_uwChromaExcursion_LSByte , 0x350a, 0x0000 }, { ColourEngine0_CoderOutputSignalRange_uwChromaExcursion_MSByte , 0x3509, 0x0000 }, { ColourEngine0_CoderOutputSignalRange_uwChromaMidpointTimes2_LSByte , 0x350e, 0x0000 }, { ColourEngine0_CoderOutputSignalRange_uwChromaMidpointTimes2_MSByte , 0x350d, 0x0000 }, + +// page "ColourEngine0_OutputCoderOffsetVector" [read only] +// { ColourEngine0_OutputCoderOffsetVector_i0_LSByte , 0x3582, 0x0000 }, { ColourEngine0_OutputCoderOffsetVector_i0_MSByte , 0x3581, 0x0000 }, { ColourEngine0_OutputCoderOffsetVector_i1_LSByte , 0x3586, 0x0000 }, { ColourEngine0_OutputCoderOffsetVector_i1_MSByte , 0x3585, 0x0000 }, { ColourEngine0_OutputCoderOffsetVector_i2_LSByte , 0x358a, 0x0000 }, { ColourEngine0_OutputCoderOffsetVector_i2_MSByte , 0x3589, 0x0000 }, + +// page "ColourEngine0_OutputCoderMatrix" [read only] +// { ColourEngine0_OutputCoderMatrix_w0_0_LSByte , 0x3602, 0x0000 }, { ColourEngine0_OutputCoderMatrix_w0_0_MSByte , 0x3601, 0x0000 }, { ColourEngine0_OutputCoderMatrix_w0_1_LSByte , 0x3606, 0x0000 }, { ColourEngine0_OutputCoderMatrix_w0_1_MSByte , 0x3605, 0x0000 }, { ColourEngine0_OutputCoderMatrix_w0_2_LSByte , 0x360a, 0x0000 }, @@ -2051,37 +2657,91 @@ struct nomadik_vpip_param vpip_default_p { ColourEngine0_OutputCoderMatrix_w2_0_MSByte , 0x3619, 0x0000 }, { ColourEngine0_OutputCoderMatrix_w2_1_LSByte , 0x361e, 0x0000 }, { ColourEngine0_OutputCoderMatrix_w2_1_MSByte , 0x361d, 0x0000 }, { ColourEngine0_OutputCoderMatrix_w2_2_LSByte , 0x3622, 0x0000 }, { ColourEngine0_OutputCoderMatrix_w2_2_MSByte , 0x3621, 0x0000 }, + +// page "ColourEngine0_FadeToBlack" +// + { ColourEngine0_FadeToBlack_fDisable , 0x3680 ,0x1}, + { ColourEngine0_FadeToBlack_fpBlackValue_LSByte , 0x3684 ,0x0}, + { ColourEngine0_FadeToBlack_fpBlackValue_MSByte , 0x3683 ,0x0}, + { ColourEngine0_FadeToBlack_fpDamperLowThreshold_LSByte , 0x3688 ,0x0}, + { ColourEngine0_FadeToBlack_fpDamperLowThreshold_MSByte , 0x3687 ,0x0}, + { ColourEngine0_FadeToBlack_fpDamperHighThreshold_LSByte , 0x368c,0x0}, + { ColourEngine0_FadeToBlack_fpDamperHighThreshold_MSByte , 0x368b,0x0}, + { ColourEngine0_FadeToBlack_fpDamperOutput_LSByte , 0x3690 ,0x0}, + { ColourEngine0_FadeToBlack_fpDamperOutput_MSByte , 0x368f ,0x0}, + +/* { ColourEngine0_FadeToBlack_fDisable , 0x3680, 0x0001 }, { ColourEngine0_FadeToBlack_fpBlackValue_LSByte , 0x3684, 0x0000 }, { ColourEngine0_FadeToBlack_fpBlackValue_MSByte , 0x3683, 0x0000 }, { ColourEngine0_FadeToBlack_fpDamperLowThreshold_LSByte , 0x3688, 0x0000 }, { ColourEngine0_FadeToBlack_fpDamperLowThreshold_MSByte , 0x3687, 0x63d1 }, { ColourEngine0_FadeToBlack_fpDamperHighThreshold_LSByte , 0x368c, 0x0000 }, { ColourEngine0_FadeToBlack_fpDamperHighThreshold_MSByte , 0x368b, 0x656f }, { ColourEngine0_FadeToBlack_fpDamperOutput_LSByte , 0x3690, 0x0000 }, { ColourEngine0_FadeToBlack_fpDamperOutput_MSByte , 0x368f, 0x0000 }, +*/ + +// page "ScalerLimits" [mode static] +// { ScalerLimits_uwPipe0MinStep_LSByte , 0x3702, 0x0000 }, { ScalerLimits_uwPipe0MinStep_MSByte , 0x3701, 0x0000 }, { ScalerLimits_uwPipe0MaxStep_LSByte , 0x3706, 0x0000 }, { ScalerLimits_uwPipe0MaxStep_MSByte , 0x3705, 0x0000 }, + +// page "ZoomMgrParams" [mode static] +// +/* + { ZoomMgrParams_fAntiZip , 0x3780 ,0x0000}, + { ZoomMgrParams_bFilterCrispness0 , 0x3782 ,0x0000}, + { ZoomMgrParams_bFilterCrispness1 , 0x3784 ,0x0000}, + { ZoomMgrParams_fInFromOutARLock , 0x3786 ,0x0000}, + { ZoomMgrParams_bPrescaleFactor , 0x3788 ,0x00}, + { ZoomMgrParams_bPrescaleType , 0x378a ,0x00}, + { ZoomMgrParams_fp16ZoomRange_LSByte , 0x378e ,0x0000}, + { ZoomMgrParams_fp16ZoomRange_MSByte , 0x378d ,0x0000}, + +// page "ZoomMgrCtrl" +// + { ZoomMgrCtrl_bHostTestCoin , 0x3800,0x01}, + { ZoomMgrCtrl_bZoomCmd , 0x3802,0x00}, + { ZoomMgrCtrl_fChgOverForbidden , 0x3804,0x00}, + { ZoomMgrCtrl_fAutoZoom , 0x3806,0x00}, + { ZoomMgrCtrl_bStepFramePeriod , 0x3808,0x00}, + { ZoomMgrCtrl_bMagFactor , 0x380a,0x0014},//0x0a, + { ZoomMgrCtrl_bChgOverMarginShift , 0x380c,0x00}, + { ZoomMgrCtrl_fCheckDataRate , 0x380e,0x00}, + { ZoomMgrCtrl_fSetAlternateInitWOI , 0x3810,0x00}, + { ZoomMgrCtrl_fSetX_Byte0 , 0x3812,0x00}, + { ZoomMgrCtrl_fSetX_Byte1 , 0x3814,0x00}, + { ZoomMgrCtrl_fSetX_Byte2 , 0x3816,0x00}, + { ZoomMgrCtrl_fSetX_Byte3 , 0x3818,0x00}, + { ZoomMgrCtrl_fp16P0ScaleLowLimit_LSByte , 0x381c,0x00}, + { ZoomMgrCtrl_fp16P0ScaleLowLimit_MSByte , 0x381b,0x00}, + { ZoomMgrCtrl_fp16P1ScaleLowLimit_LSByte , 0x3820,0x00}, + { ZoomMgrCtrl_fp16P1ScaleLowLimit_MSByte , 0x381f,0x00}, +*/ + { ZoomMgrParams_fAntiZip , 0x3780, 0x0000 }, { ZoomMgrParams_bFilterCrispness0 , 0x3782, 0x0000 }, { ZoomMgrParams_bFilterCrispness1 , 0x3784, 0x0000 }, { ZoomMgrParams_fInFromOutARLock , 0x3786, 0x0000 }, { ZoomMgrParams_bPrescaleFactor , 0x3788, 0x0000 }, { ZoomMgrParams_bPrescaleType , 0x378a, 0x0000 }, { ZoomMgrParams_fp16ZoomRange_LSByte , 0x378e, 0x0000 }, { ZoomMgrParams_fp16ZoomRange_MSByte , 0x378d, 0x100 }, + + { ZoomMgrCtrl_bHostTestCoin , 0x3800, 0x0001 }, { ZoomMgrCtrl_bZoomCmd , 0x3802, 0x0000 }, { ZoomMgrCtrl_fChgOverForbidden , 0x3804, 0x0000 }, { ZoomMgrCtrl_fAutoZoom , 0x3806, 0x0000 }, { ZoomMgrCtrl_bStepFramePeriod , 0x3808, 0x0000 }, -{ ZoomMgrCtrl_bMagFactor , 0x380a, 0x0014},//0x000a }, +{ ZoomMgrCtrl_bMagFactor , 0x380a, 0x0014},//0x000a { ZoomMgrCtrl_bChgOverMarginShift , 0x380c, 0x0000 }, { ZoomMgrCtrl_fCheckDataRate , 0x380e, 0x0000 }, { ZoomMgrCtrl_fSetAlternateInitWOI , 0x3810, 0x0000 }, { ZoomMgrCtrl_fSetX_Byte0 , 0x3812, 0x0000 }, { ZoomMgrCtrl_fSetX_Byte1 , 0x3814, 0x0000 }, @@ -2089,10 +2749,13 @@ struct nomadik_vpip_param vpip_default_p { ZoomMgrCtrl_fSetX_Byte3 , 0x3818, 0x0000 }, { ZoomMgrCtrl_fp16P0ScaleLowLimit_LSByte , 0x381c, 0x0000 }, { ZoomMgrCtrl_fp16P0ScaleLowLimit_MSByte , 0x381b, 0x0000 }, { ZoomMgrCtrl_fp16P1ScaleLowLimit_LSByte , 0x3820, 0x0000 }, { ZoomMgrCtrl_fp16P1ScaleLowLimit_MSByte , 0x381f, 0x0000 }, + +// page "ZoomMgrStatus" [read only] +// { ZoomMgrStatus_fReady , 0x3880, 0x0000 }, { ZoomMgrStatus_bDeviceTestCoin , 0x3882, 0x0000 }, { ZoomMgrStatus_bNextCmd , 0x3884, 0x0000 }, { ZoomMgrStatus_bLastCmd , 0x3886, 0x0000 }, { ZoomMgrStatus_bCommandStatus , 0x3888, 0x0000 }, @@ -2122,10 +2785,28 @@ struct nomadik_vpip_param vpip_default_p { ZoomMgrStatus_fMinFOVX_Byte3 , 0x38b8, 0x0000 }, { ZoomMgrStatus_uwXOrigin_LSByte , 0x38bc, 0x0000 }, { ZoomMgrStatus_uwXOrigin_MSByte , 0x38bb, 0x0000 }, { ZoomMgrStatus_uwYOrigin_LSByte , 0x38c0, 0x0000 }, { ZoomMgrStatus_uwYOrigin_MSByte , 0x38bf, 0x0000 }, + +// page "WhiteBalanceConstrainerControls" +// + + { WhiteBalanceConstrainerControls_fpRedA_LSByte , 0x3902 ,0x0000}, + { WhiteBalanceConstrainerControls_fpRedA_MSByte , 0x3901 ,0x0000}, + { WhiteBalanceConstrainerControls_fpBlueA_LSByte , 0x3906 ,0x0000}, + { WhiteBalanceConstrainerControls_fpBlueA_MSByte , 0x3905 ,0x0000}, + { WhiteBalanceConstrainerControls_fpRedB_LSByte , 0x390a ,0x0000}, + { WhiteBalanceConstrainerControls_fpRedB_MSByte , 0x3909 ,0x0000}, + { WhiteBalanceConstrainerControls_fpBlueB_LSByte , 0x390e ,0x0000}, + { WhiteBalanceConstrainerControls_fpBlueB_MSByte , 0x390d ,0x0000}, + { WhiteBalanceConstrainerControls_fpMaximumDistanceAllowedFromLocus_LSByte , 0x3912 ,0x0000}, + { WhiteBalanceConstrainerControls_fpMaximumDistanceAllowedFromLocus_MSByte , 0x3911 ,0x0000}, + { WhiteBalanceConstrainerControls_fEnableConstrainedWhiteBalance , 0x3914 ,0x0000}, + + +/* { WhiteBalanceConstrainerControls_fpRedA_LSByte , 0x3902, 0x0000 }, { WhiteBalanceConstrainerControls_fpRedA_MSByte , 0x3901, 0x0000 }, { WhiteBalanceConstrainerControls_fpBlueA_LSByte , 0x3906, 0x0000 }, { WhiteBalanceConstrainerControls_fpBlueA_MSByte , 0x3905, 0x0000 }, { WhiteBalanceConstrainerControls_fpRedB_LSByte , 0x390a, 0x0000 }, @@ -2133,25 +2814,34 @@ struct nomadik_vpip_param vpip_default_p { WhiteBalanceConstrainerControls_fpBlueB_LSByte , 0x390e, 0x0000 }, { WhiteBalanceConstrainerControls_fpBlueB_MSByte , 0x390d, 0x3acf }, { WhiteBalanceConstrainerControls_fpMaximumDistanceAllowedFromLocus_LSByte , 0x3912, 0x0000 }, { WhiteBalanceConstrainerControls_fpMaximumDistanceAllowedFromLocus_MSByte , 0x3911, 0x2e8e }, { WhiteBalanceConstrainerControls_fEnableConstrainedWhiteBalance , 0x3914, 0x0001 }, +*/ +// page "WhiteBalanceConstrainerOutput" [read only] +// { WhiteBalanceConstrainerOutput_fpOutputRedGain_LSByte , 0x3982, 0x0000 }, { WhiteBalanceConstrainerOutput_fpOutputRedGain_MSByte , 0x3981, 0x0000 }, { WhiteBalanceConstrainerOutput_fpOutputGreenGain_LSByte , 0x3986, 0x0000 }, { WhiteBalanceConstrainerOutput_fpOutputGreenGain_MSByte , 0x3985, 0x0000 }, { WhiteBalanceConstrainerOutput_fpOutputBlueGain_LSByte , 0x398a, 0x0000 }, { WhiteBalanceConstrainerOutput_fpOutputBlueGain_MSByte , 0x3989, 0x0000 }, { WhiteBalanceConstrainerOutput_fAreGainsConstrained , 0x398c, 0x0000 }, + +// page "WhiteBalanceConstrainerInternal" [read only] +// { WhiteBalanceConstrainerInternal_fpGradientOfLocusAB_LSByte , 0x3a02, 0x0000 }, { WhiteBalanceConstrainerInternal_fpGradientOfLocusAB_MSByte , 0x3a01, 0x0000 }, { WhiteBalanceConstrainerInternal_fpDistanceOfInputPointFromLocusAB_LSByte , 0x3a06, 0x0000 }, { WhiteBalanceConstrainerInternal_fpDistanceOfInputPointFromLocusAB_MSByte , 0x3a05, 0x0000 }, { WhiteBalanceConstrainerInternal_fpConstrainedRedPoint_LSByte , 0x3a0a, 0x0000 }, { WhiteBalanceConstrainerInternal_fpConstrainedRedPoint_MSByte , 0x3a09, 0x0000 }, { WhiteBalanceConstrainerInternal_fpConstrainedBluePoint_LSByte , 0x3a0e, 0x0000 }, { WhiteBalanceConstrainerInternal_fpConstrainedBluePoint_MSByte , 0x3a0d, 0x0000 }, + +// page "ModeSetupBank1" [mode static] +// { ModeSetupBank1_uwInputImageSize_X_LSByte , 0x3a82, 0x0000 }, { ModeSetupBank1_uwInputImageSize_X_MSByte , 0x3a81, 0x0000 }, { ModeSetupBank1_uwInputImageSize_Y_LSByte , 0x3a86, 0x0000 }, { ModeSetupBank1_uwInputImageSize_Y_MSByte , 0x3a85, 0x0000 }, { ModeSetupBank1_uwMaxImageSize_X_LSByte , 0x3a8a, 0x0000 }, @@ -2160,11 +2850,11 @@ struct nomadik_vpip_param vpip_default_p { ModeSetupBank1_uwMaxImageSize_Y_MSByte , 0x3a8d, 0x0000 }, { ModeSetupBank1_uwMinImageSize_X_LSByte , 0x3a92, 0x0000 }, { ModeSetupBank1_uwMinImageSize_X_MSByte , 0x3a91, 0x0000 }, { ModeSetupBank1_uwMinImageSize_Y_LSByte , 0x3a96, 0x0000 }, { ModeSetupBank1_uwMinImageSize_Y_MSByte , 0x3a95, 0x0000 }, -{ ModeSetupBank1_bActiveSensor , 0x3a98, 0x0002 }, + { ModeSetupBank1_bActiveSensor , 0x3a98, 0x2}, { ModeSetupBank1_fLowPowerStreaming , 0x3a9a, 0x0000 }, { ModeSetupBank1_bTestMode , 0x3a9c, 0x0000 }, { ModeSetupBank1_bNumberOfStatusLines , 0x3a9e, 0x0000 }, { ModeSetupBank1_bNumberOfDarkLines , 0x3aa0, 0x0000 }, { ModeSetupBank1_bNumberOfBlackLines , 0x3aa2, 0x0000 }, @@ -2173,13 +2863,22 @@ struct nomadik_vpip_param vpip_default_p { ModeSetupBank1_uwNumberOfInterFrameLines_LSByte , 0x3aaa, 0x0000 }, { ModeSetupBank1_uwNumberOfInterFrameLines_MSByte , 0x3aa9, 0x0000 }, { ModeSetupBank1_bNumberOfDummyColumns , 0x3aac, 0x0000 }, { ModeSetupBank1_bInputImageSource , 0x3aae, 0x0000 }, { ModeSetupBank1_bOutputImageDestination , 0x3ab0, 0x0000 }, + +// page "DummyPage3" +// { DummyPage3_bDummyPageElement , 0x3b00, 0x0000 }, + +// page "DummyPage4" +// { DummyPage4_bDummyPageElement , 0x3b80, 0x0000 }, -{ AntiVignetteControlsFar_fDisableFilter , 0x3c00, 0x0001 }, + +// page "AntiVignetteControlsFar" +// + { AntiVignetteControlsFar_fDisableFilter , 0x3c00 ,0x1}, { AntiVignetteControlsFar_bFilterCoeff_R2_r , 0x3c02, 0x0000 }, { AntiVignetteControlsFar_bFilterCoeff_R2_gr , 0x3c04, 0x0000 }, { AntiVignetteControlsFar_bFilterCoeff_R2_gb , 0x3c06, 0x0000 }, { AntiVignetteControlsFar_bFilterCoeff_R2_b , 0x3c08, 0x0000 }, { AntiVignetteControlsFar_bFilterCoeff_R4_r , 0x3c0a, 0x0000 }, @@ -2211,11 +2910,14 @@ struct nomadik_vpip_param vpip_default_p { AntiVignetteControlsFar_bUnityOffset_r , 0x3c3e, 0x0000 }, { AntiVignetteControlsFar_bUnityOffset_gr , 0x3c40, 0x0000 }, { AntiVignetteControlsFar_bUnityOffset_gb , 0x3c42, 0x0000 }, { AntiVignetteControlsFar_bUnityOffset_b , 0x3c44, 0x0000 }, { AntiVignetteControlsFar_fAdaptiveAntiVignetteEnable , 0x3c46, 0x0000 }, -{ AntiVignetteControlsNear_fDisableFilter , 0x3c80, 0x0001 }, + +// page "AntiVignetteControlsNear" +// + { AntiVignetteControlsNear_fDisableFilter , 0x3c80 ,0x1}, { AntiVignetteControlsNear_bFilterCoeff_R2_r , 0x3c82, 0x0000 }, { AntiVignetteControlsNear_bFilterCoeff_R2_gr , 0x3c84, 0x0000 }, { AntiVignetteControlsNear_bFilterCoeff_R2_gb , 0x3c86, 0x0000 }, { AntiVignetteControlsNear_bFilterCoeff_R2_b , 0x3c88, 0x0000 }, { AntiVignetteControlsNear_bFilterCoeff_R4_r , 0x3c8a, 0x0000 }, @@ -2247,19 +2949,25 @@ struct nomadik_vpip_param vpip_default_p { AntiVignetteControlsNear_bUnityOffset_r , 0x3cbe, 0x0000 }, { AntiVignetteControlsNear_bUnityOffset_gr , 0x3cc0, 0x0000 }, { AntiVignetteControlsNear_bUnityOffset_gb , 0x3cc2, 0x0000 }, { AntiVignetteControlsNear_bUnityOffset_b , 0x3cc4, 0x0000 }, { AntiVignetteControlsNear_fAdaptiveAntiVignetteEnable , 0x3cc6, 0x0000 }, + +// page "AFStatsControls" [mode static] +// { AFStatsControls_fAbsSquareEnabled , 0x3d00, 0x0000 }, { AFStatsControls_bCoringValue , 0x3d02, 0x0000 }, { AFStatsControls_bWindowsSystem , 0x3d04, 0x0000 }, { AFStatsControls_bHRatio_Num , 0x3d06, 0x0000 }, { AFStatsControls_bHRatio_Den , 0x3d08, 0x0000 }, { AFStatsControls_bVRatio_Num , 0x3d0a, 0x0000 }, { AFStatsControls_bVRatio_Den , 0x3d0c, 0x0000 }, { AFStatsControls_bHostActiveZonesCounter , 0x3d0e, 0x0000 }, { AFStatsControls_fAutoRefresh , 0x3d10, 0x0000 }, + +// page "AFStatsStatus" [read only] +// { AFStatsStatus_bAFStats_Error , 0x3d80, 0x0000 }, { AFStatsStatus_fAbsSquareEnabled , 0x3d82, 0x0000 }, { AFStatsStatus_bCoringValue , 0x3d84, 0x0000 }, { AFStatsStatus_bWindowsSystem , 0x3d86, 0x0000 }, { AFStatsStatus_bActiveZonesCounter , 0x3d88, 0x0000 }, @@ -2280,10 +2988,13 @@ struct nomadik_vpip_param vpip_default_p { AFStatsStatus_udwMaxFocusMeasurePerPixel_Byte1 , 0x3da6, 0x0000 }, { AFStatsStatus_udwMaxFocusMeasurePerPixel_Byte2 , 0x3da8, 0x0000 }, { AFStatsStatus_udwMaxFocusMeasurePerPixel_Byte3 , 0x3daa, 0x0000 }, { AFStatsStatus_uwStartingAFZoneLine_LSByte , 0x3dae, 0x0000 }, { AFStatsStatus_uwStartingAFZoneLine_MSByte , 0x3dad, 0x0000 }, + +// page "AFFocusStats" +// { AFFocusStats_udwStatsValue_0_Byte0 , 0x3e00, 0x0000 }, { AFFocusStats_udwStatsValue_0_Byte1 , 0x3e02, 0x0000 }, { AFFocusStats_udwStatsValue_0_Byte2 , 0x3e04, 0x0000 }, { AFFocusStats_udwStatsValue_0_Byte3 , 0x3e06, 0x0000 }, { AFFocusStats_udwStatsValue_1_Byte0 , 0x3e08, 0x0000 }, @@ -2308,17 +3019,52 @@ struct nomadik_vpip_param vpip_default_p { AFFocusStats_udwStatsValue_5_Byte3 , 0x3e2e, 0x0000 }, { AFFocusStats_udwStatsValue_6_Byte0 , 0x3e30, 0x0000 }, { AFFocusStats_udwStatsValue_6_Byte1 , 0x3e32, 0x0000 }, { AFFocusStats_udwStatsValue_6_Byte2 , 0x3e34, 0x0000 }, { AFFocusStats_udwStatsValue_6_Byte3 , 0x3e36, 0x0000 }, + +// page "AFLightStats" +// { AFLightStats_bStatsValue_0 , 0x3e80, 0x0000 }, { AFLightStats_bStatsValue_1 , 0x3e82, 0x0000 }, { AFLightStats_bStatsValue_2 , 0x3e84, 0x0000 }, { AFLightStats_bStatsValue_3 , 0x3e86, 0x0000 }, { AFLightStats_bStatsValue_4 , 0x3e88, 0x0000 }, { AFLightStats_bStatsValue_5 , 0x3e8a, 0x0000 }, { AFLightStats_bStatsValue_6 , 0x3e8c, 0x0000 }, + +// page "FLADriverLowLevelParameters" +// + /* + { FLADriverLowLevelParameters_wMinPosition_LSByte , 0x3f02 ,0x0000}, + { FLADriverLowLevelParameters_wMinPosition_MSByte , 0x3f01 ,0x0000}, + { FLADriverLowLevelParameters_wMaxPosition_LSByte , 0x3f06 ,0x0000}, + { FLADriverLowLevelParameters_wMaxPosition_MSByte , 0x3f05 ,0x0000}, + { FLADriverLowLevelParameters_wHomePosition_LSByte , 0x3f0a ,0x0000}, + { FLADriverLowLevelParameters_wHomePosition_MSByte , 0x3f09 ,0x0000}, + { FLADriverLowLevelParameters_wParkPosition_LSByte , 0x3f0e ,0x0000}, + { FLADriverLowLevelParameters_wParkPosition_MSByte , 0x3f0d ,0x0000}, + { FLADriverLowLevelParameters_bFramesToSkip , 0x3f10 ,0x0000}, + { FLADriverLowLevelParameters_AutoSkipNextFrame , 0x3f12 ,0x1}, + { FLADriverLowLevelParameters_bLowLevelMacroPos , 0x3f14 ,0x0000}, + { FLADriverLowLevelParameters_bLowLevelInfinityPos , 0x3f16 ,0x0000}, + { FLADriverLowLevelParameters_bLowLevelPositionTolerance , 0x3f18 ,0x0000}, + { FLADriverLowLevelParameters_bLowLevelTimeLimit , 0x3f1a ,0x0000}, + { FLADriverLowLevelParameters_bMaxNumberRetries , 0x3f1c ,0xa}, + { FLADriverLowLevelParameters_fLowLevelDriverInitialized , 0x3f1e ,0x1}, + { FLADriverLowLevelParameters_fOverwriteLowLevelLimits , 0x3f20 ,0x1}, + { FLADriverLowLevelParameters_bNVMRead , 0x3f22 ,0x0000}, + { FLADriverLowLevelParameters_bNVMScalingFactorInfinity , 0x3f24 ,0x0000}, + { FLADriverLowLevelParameters_bNVMScalingFactorMacro , 0x3f26 ,0x0000}, + { FLADriverLowLevelParameters_bNVM_PS_Offset , 0x3f28 ,0x0000}, + { FLADriverLowLevelParameters_bNVM_PS_Gains , 0x3f2a ,0x0000}, + { FLADriverLowLevelParameters_bNVM_PS_IBias , 0x3f2c ,0x0000}, + { FLADriverLowLevelParameters_bNVM_PS_RampGain , 0x3f2e ,0x0000}, + { FLADriverLowLevelParameters_bNVM_PS_Type , 0x3f30 ,0x0000}, + { FLADriverLowLevelParameters_uwNVM_minidriver_m_c_LSByte , 0x3f34 ,0x0000}, + { FLADriverLowLevelParameters_uwNVM_minidriver_m_c_MSByte , 0x3f33 ,0x0000}, + */ { FLADriverLowLevelParameters_wMinPosition_LSByte , 0x3f02, 0x0000 }, { FLADriverLowLevelParameters_wMinPosition_MSByte , 0x3f01, 0x0000 }, { FLADriverLowLevelParameters_wMaxPosition_LSByte , 0x3f06, 0x0000 }, { FLADriverLowLevelParameters_wMaxPosition_MSByte , 0x3f05, 0x0000 }, { FLADriverLowLevelParameters_wHomePosition_LSByte , 0x3f0a, 0x0000 }, @@ -2342,20 +3088,26 @@ struct nomadik_vpip_param vpip_default_p { FLADriverLowLevelParameters_bNVM_PS_IBias , 0x3f2c, 0x0000 }, { FLADriverLowLevelParameters_bNVM_PS_RampGain , 0x3f2e, 0x0000 }, { FLADriverLowLevelParameters_bNVM_PS_Type , 0x3f30, 0x0000 }, { FLADriverLowLevelParameters_uwNVM_minidriver_m_c_LSByte , 0x3f34, 0x0000 }, { FLADriverLowLevelParameters_uwNVM_minidriver_m_c_MSByte , 0x3f33, 0x0000 }, + +// page "FLADriverControls" +// { FLADriverControls_bMMode , 0x3f80, 0x0000 }, { FLADriverControls_wTargetPosition_LSByte , 0x3f84, 0x0000 }, { FLADriverControls_wTargetPosition_MSByte , 0x3f83, 0x0000 }, { FLADriverControls_wPositionTolerance_LSByte , 0x3f88, 0x0000 }, { FLADriverControls_wPositionTolerance_MSByte , 0x3f87, 0x0000 }, { FLADriverControls_uwTimeLimit_ms_LSByte , 0x3f8c, 0x0000 }, { FLADriverControls_uwTimeLimit_ms_MSByte , 0x3f8b, 0x0000 }, { FLADriverControls_bTrigger , 0x3f8e, 0x0000 }, { FLADriverControls_bSlewMode , 0x3f90, 0x0000 }, { FLADriverControls_bSlewRate , 0x3f92, 0x0000 }, + +// page "FLADriverStatus" [read only] +// { FLADriverStatus_wLensPosition_LSByte , 0x4002, 0x0000 }, { FLADriverStatus_wLensPosition_MSByte , 0x4001, 0x0000 }, { FLADriverStatus_fLensIsMoving , 0x4004, 0x0000 }, { FLADriverStatus_fLimitsExceeded , 0x4006, 0x0000 }, { FLADriverStatus_fLensIsAtHome , 0x4008, 0x0000 }, @@ -2363,10 +3115,13 @@ struct nomadik_vpip_param vpip_default_p { FLADriverStatus_bSkippedFrames , 0x400c, 0x0000 }, { FLADriverStatus_bCycles , 0x400e, 0x0000 }, { FLADriverStatus_bMiniDriverTimeoutError , 0x4010, 0x0000 }, { FLADriverStatus_wTargetPosition , 0x4012, 0x0000 }, { FLADriverStatus_bLowLevelPosition , 0x4014, 0x0000 }, + +// page "FocusControls" +// { FocusControls_fErrorReset , 0x4080, 0x0000 }, { FocusControls_bRange , 0x4082, 0x0000 }, { FocusControls_bMode , 0x4084, 0x0000 }, { FocusControls_bAFCommand , 0x4086, 0x0000 }, { FocusControls_bLensCommand , 0x4088, 0x0000 }, @@ -2374,10 +3129,13 @@ struct nomadik_vpip_param vpip_default_p { FocusControls_fTestCoinEnabled , 0x408c, 0x0000 }, { FocusControls_bControlCoin , 0x408e, 0x0000 }, { FocusControls_fInternalStats_Disable , 0x4090, 0x0000 }, { FocusControls_bActuator_Disable , 0x4092, 0x0000 }, { FocusControls_fInhibitAutoMetering , 0x4094, 0x0000 }, + +// page "FocusStatus" [read only] +// { FocusStatus_bModeStatus , 0x4100, 0x0000 }, { FocusStatus_bAFCommandStatus , 0x4102, 0x0000 }, { FocusStatus_bLensCommandStatus , 0x4104, 0x0000 }, { FocusStatus_fAutoFocusEnabled , 0x4106, 0x0000 }, { FocusStatus_bRange , 0x4108, 0x0000 }, @@ -2389,10 +3147,34 @@ struct nomadik_vpip_param vpip_default_p { FocusStatus_fRunForTest , 0x4114, 0x0000 }, { FocusStatus_bStatusCoin , 0x4116, 0x0000 }, { FocusStatus_fInternalStats_Disabled , 0x4118, 0x0000 }, { FocusStatus_bActuator_Disabled , 0x411a, 0x0000 }, { FocusStatus_bLastUsedAFSensor , 0x411c, 0x0000 }, + +// page "FocusRangeConstants" +// + /* + { FocusRangeConstants_wFullRange_LensMinPosition_LSByte , 0x4182 ,0x0000}, + { FocusRangeConstants_wFullRange_LensMinPosition_MSByte , 0x4181 ,0x0000}, + { FocusRangeConstants_wFullRange_LensMaxPosition_LSByte , 0x4186 ,0x0000}, + { FocusRangeConstants_wFullRange_LensMaxPosition_MSByte , 0x4185 ,0x0000}, + { FocusRangeConstants_wFullRange_LensRecoveryPosition_LSByte , 0x418a ,0x0000}, + { FocusRangeConstants_wFullRange_LensRecoveryPosition_MSByte , 0x4189 ,0x0000}, + { FocusRangeConstants_wLandscape_LensMinPosition_LSByte , 0x418e ,0x0000}, + { FocusRangeConstants_wLandscape_LensMinPosition_MSByte , 0x418d ,0x0000}, + { FocusRangeConstants_wLandscape_LensMaxPosition_LSByte , 0x4192 ,0x0000}, + { FocusRangeConstants_wLandscape_LensMaxPosition_MSByte , 0x4191 ,0x0000}, + { FocusRangeConstants_wLandscape_LensRecoveryPosition_LSByte , 0x4196 ,0x0000}, + { FocusRangeConstants_wLandscape_LensRecoveryPosition_MSByte , 0x4195 ,0x0000}, + { FocusRangeConstants_wMacro_LensMinPosition_LSByte , 0x419a ,0x0000}, + { FocusRangeConstants_wMacro_LensMinPosition_MSByte , 0x4199 ,0x0000}, + { FocusRangeConstants_wMacro_LensMaxPosition_LSByte , 0x419e ,0x0000}, + { FocusRangeConstants_wMacro_LensMaxPosition_MSByte , 0x419d ,0x0000}, + { FocusRangeConstants_wMacro_LensRecoveryPosition_LSByte , 0x41a2 ,0x0000}, + { FocusRangeConstants_wMacro_LensRecoveryPosition_MSByte , 0x41a1 ,0x0000}, +*/ + { FocusRangeConstants_wFullRange_LensMinPosition_LSByte , 0x4182, 0x0000 }, { FocusRangeConstants_wFullRange_LensMinPosition_MSByte , 0x4181, 0x0000 }, { FocusRangeConstants_wFullRange_LensMaxPosition_LSByte , 0x4186, 0x0000 }, { FocusRangeConstants_wFullRange_LensMaxPosition_MSByte , 0x4185, 0x03ff }, { FocusRangeConstants_wFullRange_LensRecoveryPosition_LSByte , 0x418a, 0x0000 }, @@ -2407,10 +3189,38 @@ struct nomadik_vpip_param vpip_default_p { FocusRangeConstants_wMacro_LensMinPosition_MSByte , 0x4199, 0x0000 }, { FocusRangeConstants_wMacro_LensMaxPosition_LSByte , 0x419e, 0x0000 }, { FocusRangeConstants_wMacro_LensMaxPosition_MSByte , 0x419d, 0x03ff }, { FocusRangeConstants_wMacro_LensRecoveryPosition_LSByte , 0x41a2, 0x0000 }, { FocusRangeConstants_wMacro_LensRecoveryPosition_MSByte , 0x41a1, 0x01ff }, +// page "AutoFocusControls" +// + /* + { AutoFocusControls_bHostCmd , 0x4200 ,0x0000}, + { AutoFocusControls_fFreezeIfStable , 0x4202 ,0x0000}, + { AutoFocusControls_fFMTesting_AutoDisable , 0x4204 ,0x0000}, + { AutoFocusControls_fFastAFAlgoStart , 0x4206 ,0x0000}, + { AutoFocusControls_fBackLight_Enable , 0x4208 ,0x0000}, + { AutoFocusControls_fBackupSolution , 0x420a ,0x0000}, + { AutoFocusControls_fCheckExposureStable_Enable , 0x420c ,0x0000}, + { AutoFocusControls_fEnableSimpleCoarseThEvaluation , 0x420e ,0x0000}, + { AutoFocusControls_bSelectedMultizoneBehavior , 0x4210 ,0x0000}, + { AutoFocusControls_bBackLightMethodSelected , 0x4212 ,0x0000}, + { AutoFocusControls_bWeighedFunctionSelected , 0x4214 ,0x0000}, + { AutoFocusControls_fMotionBlurEnable , 0x4216 ,0x0000}, + { AutoFocusControls_fLightVariationEnable , 0x4218 ,0x0000}, + { AutoFocusControls_fEnableTrackingThresholdEvaluation , 0x421a ,0x0000}, + { AutoFocusControls_fEnableHeuristicMethod , 0x421c ,0x0000}, + { AutoFocusControls_fEnableBackupSolution , 0x421e ,0x0000}, + { AutoFocusControls_fFineToCoarseAutoTransitionEnable , 0x4220 ,0x0000}, + { AutoFocusControls_fEnableTimedFineExecution , 0x4222 ,0x0000}, + { AutoFocusControls_fEnableTrakingZoneVariation , 0x4224 ,0x0000}, + { AutoFocusControls_fEnableFunctionThresholdTest , 0x4226 ,0x0000}, + { AutoFocusControls_fForceTestState , 0x4228 ,0x0000}, + { AutoFocusControls_bManualAFNextState , 0x422a ,0x0000}, + { AutoFocusControls_fResetHCSPos , 0x422c ,0x0000}, +*/ + { AutoFocusControls_bHostCmd , 0x4200, 0x0000 }, { AutoFocusControls_fFreezeIfStable , 0x4202, 0x0000 }, { AutoFocusControls_fFMTesting_AutoDisable , 0x4204, 0x0001 }, { AutoFocusControls_fFastAFAlgoStart , 0x4206, 0x0000 }, { AutoFocusControls_fBackLight_Enable , 0x4208, 0x0000 }, @@ -2430,10 +3240,39 @@ struct nomadik_vpip_param vpip_default_p { AutoFocusControls_fEnableTrakingZoneVariation , 0x4224, 0x0000 }, { AutoFocusControls_fEnableFunctionThresholdTest , 0x4226, 0x0001 }, { AutoFocusControls_fForceTestState , 0x4228, 0x0000 }, { AutoFocusControls_bManualAFNextState , 0x422a, 0x0000 }, { AutoFocusControls_fResetHCSPos , 0x422c, 0x0001 }, +// page "AutoFocusConstants" +// +/* + { AutoFocusConstants_bCoarseStep , 0x4280 ,0x0000}, + { AutoFocusConstants_bFineStep , 0x4282 ,0x0000}, + { AutoFocusConstants_bFullSearchStep , 0x4284 ,0x0000}, + { AutoFocusConstants_bLeakyIntegratorConstant , 0x4286 ,0x0000}, + { AutoFocusConstants_uwFineThreshold_LSByte , 0x428a ,0x0000}, + { AutoFocusConstants_uwFineThreshold_MSByte , 0x4289 ,0x0000}, + { AutoFocusConstants_bFineToCoarseThreshold , 0x428c ,0x0000}, + { AutoFocusConstants_uwBacklightThreshold_LSByte , 0x4290 ,0x0000}, + { AutoFocusConstants_uwBacklightThreshold_MSByte , 0x428f ,0x0000}, + { AutoFocusConstants_uwMotionBlurInRatio_LSByte , 0x4294 ,0x0000}, + { AutoFocusConstants_uwMotionBlurInRatio_MSByte , 0x4293 ,0x0000}, + { AutoFocusConstants_uwMotionBlurOutRatio_LSByte , 0x4298 ,0x0000}, + { AutoFocusConstants_uwMotionBlurOutRatio_MSByte , 0x4297 ,0x0000}, + { AutoFocusConstants_bMaxNumberContinuouslyInstableTime , 0x429a ,0x0000}, + { AutoFocusConstants_bMaxNumberContinuouslyStableFrame , 0x429c ,0x0000}, + { AutoFocusConstants_uwMaxNumberContinuouslyThresholdTime , 0x429e ,0x0000}, + { AutoFocusConstants_uwFixedLowFocusMeasureValue_LSByte , 0x42a2 ,0x0000}, + { AutoFocusConstants_uwFixedLowFocusMeasureValue_MSByte , 0x42a1 ,0x0000}, + { AutoFocusConstants_bMaxFocusMeasureThreshold , 0x42a4 ,0x0000}, + { AutoFocusConstants_bLightGap , 0x42a6 ,0x0000}, + { AutoFocusConstants_uwDeltaValue_LSByte , 0x42aa ,0x0000}, + { AutoFocusConstants_uwDeltaValue_MSByte , 0x42a9 ,0x0000}, + { AutoFocusConstants_uwMaxFineTh_LSByte , 0x42ae ,0x0000}, + { AutoFocusConstants_uwMaxFineTh_MSByte , 0x42ad ,0x0000}, + */ + { AutoFocusConstants_bCoarseStep , 0x4280, 0x0078 }, { AutoFocusConstants_bFineStep , 0x4282, 0x0014 }, { AutoFocusConstants_bFullSearchStep , 0x4284, 0x0000 }, { AutoFocusConstants_bLeakyIntegratorConstant , 0x4286, 0x0000 }, { AutoFocusConstants_uwFineThreshold_LSByte , 0x428a, 0x0000 }, @@ -2454,15 +3293,21 @@ struct nomadik_vpip_param vpip_default_p { AutoFocusConstants_bLightGap , 0x42a6, 0x0000 }, { AutoFocusConstants_uwDeltaValue_LSByte , 0x42aa, 0x0000 }, { AutoFocusConstants_uwDeltaValue_MSByte , 0x42a9, 0x0000 }, { AutoFocusConstants_uwMaxFineTh_LSByte , 0x42ae, 0x0000 }, { AutoFocusConstants_uwMaxFineTh_MSByte , 0x42ad, 0x0000 }, + +// page "AutoFocusInput" +// { AutoFocusInput_wLensPosition_LSByte , 0x4302, 0x0000 }, { AutoFocusInput_wLensPosition_MSByte , 0x4301, 0x0000 }, { AutoFocusInput_fLimitsExceeded , 0x4304, 0x0000 }, { AutoFocusInput_wLastStepExecuted_LSByte , 0x4308, 0x0000 }, { AutoFocusInput_wLastStepExecuted_MSByte , 0x4307, 0x0000 }, + +// page "AutoFocusStatus" [read only] +// { AutoFocusStatus_bCycles , 0x4380, 0x0000 }, { AutoFocusStatus_bHostCmd , 0x4382, 0x0000 }, { AutoFocusStatus_bAF_PrevState , 0x4384, 0x0000 }, { AutoFocusStatus_bAF_State , 0x4386, 0x0000 }, { AutoFocusStatus_bAF_NextState , 0x4388, 0x0000 }, @@ -2493,14 +3338,20 @@ struct nomadik_vpip_param vpip_default_p { AutoFocusStatus_uwTotalCoarseVariation_LSByte , 0x43bc, 0x0000 }, { AutoFocusStatus_uwTotalCoarseVariation_MSByte , 0x43bb, 0x0000 }, { AutoFocusStatus_uwTotalFineVariation_LSByte , 0x43c0, 0x0000 }, { AutoFocusStatus_uwTotalFineVariation_MSByte , 0x43bf, 0x0000 }, { AutoFocusStatus_bCountVariationRegion , 0x43c2, 0x0000 }, + +// page "AutoFocusOutput" [read only] +// { AutoFocusOutput_cFocusLensActuatorCommand , 0x4400, 0x0000 }, { AutoFocusOutput_wStep_LSByte , 0x4404, 0x0000 }, { AutoFocusOutput_wStep_MSByte , 0x4403, 0x0000 }, { AutoFocusOutput_cDirection , 0x4406, 0x0000 }, + +// page "AutoFocusMeasureData" [read only] +// { AutoFocusMeasureData_udwFocusMeasure_Byte0 , 0x4480, 0x0000 }, { AutoFocusMeasureData_udwFocusMeasure_Byte1 , 0x4482, 0x0000 }, { AutoFocusMeasureData_udwFocusMeasure_Byte2 , 0x4484, 0x0000 }, { AutoFocusMeasureData_udwFocusMeasure_Byte3 , 0x4486, 0x0000 }, { AutoFocusMeasureData_udwPrevFocusMeasure_Byte0 , 0x4488, 0x0000 }, @@ -2553,24 +3404,33 @@ struct nomadik_vpip_param vpip_default_p { AutoFocusMeasureData_udwCurrentFocusMeasureDifference_Byte3 , 0x44e6, 0x0000 }, { AutoFocusMeasureData_udwOldTrackingFocusMeasure_Byte0 , 0x44e8, 0x0000 }, { AutoFocusMeasureData_udwOldTrackingFocusMeasure_Byte1 , 0x44ea, 0x0000 }, { AutoFocusMeasureData_udwOldTrackingFocusMeasure_Byte2 , 0x44ec, 0x0000 }, { AutoFocusMeasureData_udwOldTrackingFocusMeasure_Byte3 , 0x44ee, 0x0000 }, + +// page "AutoFocusWeightControls" +// { AutoFocusWeightControls_bWeight_0 , 0x4500, 0x0000 }, { AutoFocusWeightControls_bWeight_1 , 0x4502, 0x0000 }, { AutoFocusWeightControls_bWeight_2 , 0x4504, 0x0000 }, { AutoFocusWeightControls_bWeight_3 , 0x4506, 0x0000 }, { AutoFocusWeightControls_bWeight_4 , 0x4508, 0x0000 }, { AutoFocusWeightControls_bWeight_5 , 0x450a, 0x0000 }, { AutoFocusWeightControls_bWeight_6 , 0x450c, 0x0000 }, + +// page "AutoFocusDynamicWeight" [read only] +// { AutoFocusDynamicWeight_bWeight_0 , 0x4580, 0x0000 }, { AutoFocusDynamicWeight_bWeight_1 , 0x4582, 0x0000 }, { AutoFocusDynamicWeight_bWeight_2 , 0x4584, 0x0000 }, { AutoFocusDynamicWeight_bWeight_3 , 0x4586, 0x0000 }, { AutoFocusDynamicWeight_bWeight_4 , 0x4588, 0x0000 }, { AutoFocusDynamicWeight_bWeight_5 , 0x458a, 0x0000 }, { AutoFocusDynamicWeight_bWeight_6 , 0x458c, 0x0000 }, + +// page "AutoFocusThresholds" [read only] +// { AutoFocusThresholds_uwCoarseThreshold_LSByte , 0x4602, 0x0000 }, { AutoFocusThresholds_uwCoarseThreshold_MSByte , 0x4601, 0x0000 }, { AutoFocusThresholds_uwFineThreshold_LSByte , 0x4606, 0x0000 }, { AutoFocusThresholds_uwFineThreshold_MSByte , 0x4605, 0x0000 }, { AutoFocusThresholds_uwBeforeMotionBlur_LSByte , 0x460a, 0x0000 }, @@ -2583,10 +3443,13 @@ struct nomadik_vpip_param vpip_default_p { AutoFocusThresholds_udwCurrentVariation_Byte3 , 0x4616, 0x0000 }, { AutoFocusThresholds_udwLowFocusMeasureValue_Byte0 , 0x4618, 0x0000 }, { AutoFocusThresholds_udwLowFocusMeasureValue_Byte1 , 0x461a, 0x0000 }, { AutoFocusThresholds_udwLowFocusMeasureValue_Byte2 , 0x461c, 0x0000 }, { AutoFocusThresholds_udwLowFocusMeasureValue_Byte3 , 0x461e, 0x0000 }, + +// page "AutoFocusHeuristicConstants" +// { AutoFocusHeuristicConstants_uwLensPositionInputMax_LSByte , 0x4682, 0x0000 }, { AutoFocusHeuristicConstants_uwLensPositionInputMax_MSByte , 0x4681, 0x0000 }, { AutoFocusHeuristicConstants_uwLensPositionInputMin_LSByte , 0x4686, 0x0000 }, { AutoFocusHeuristicConstants_uwLensPositionInputMin_MSByte , 0x4685, 0x0000 }, { AutoFocusHeuristicConstants_bBrightnessInputMax , 0x4688, 0x0000 }, @@ -2599,10 +3462,13 @@ struct nomadik_vpip_param vpip_default_p { AutoFocusHeuristicConstants_uwFineToCoarseMax_MSByte , 0x4695, 0x0000 }, { AutoFocusHeuristicConstants_uwFineToCoarseMin_LSByte , 0x469a, 0x0000 }, { AutoFocusHeuristicConstants_uwFineToCoarseMin_MSByte , 0x4699, 0x0000 }, { AutoFocusHeuristicConstants_bHighToMaxFMShiftFactor , 0x469c, 0x0000 }, { AutoFocusHeuristicConstants_bLowToHighFMShiftFactor , 0x469e, 0x0000 }, + +// page "AutoFocusThHeuristicInput" [read only] +// { AutoFocusThHeuristicInput_udwFocusMeasureInputMax_Byte0 , 0x4700, 0x0000 }, { AutoFocusThHeuristicInput_udwFocusMeasureInputMax_Byte1 , 0x4702, 0x0000 }, { AutoFocusThHeuristicInput_udwFocusMeasureInputMax_Byte2 , 0x4704, 0x0000 }, { AutoFocusThHeuristicInput_udwFocusMeasureInputMax_Byte3 , 0x4706, 0x0000 }, { AutoFocusThHeuristicInput_udwFocusMeasureInputMin_Byte0 , 0x4708, 0x0000 }, @@ -2614,23 +3480,35 @@ struct nomadik_vpip_param vpip_default_p { AutoFocusThHeuristicInput_udwFocusMeasureInput_Byte2 , 0x4714, 0x0000 }, { AutoFocusThHeuristicInput_udwFocusMeasureInput_Byte3 , 0x4716, 0x0000 }, { AutoFocusThHeuristicInput_uwLensPositionInput_LSByte , 0x471a, 0x0000 }, { AutoFocusThHeuristicInput_uwLensPositionInput_MSByte , 0x4719, 0x0000 }, { AutoFocusThHeuristicInput_bBrightnessInput , 0x471c, 0x0000 }, + +// page "AutoFocusInstableFocusMeasureStatus" [read only] +// { AutoFocusInstableFocusMeasureStatus_bStatus_SceneDetector , 0x4780, 0x0000 }, { AutoFocusInstableFocusMeasureStatus_bCountInstableFocusMeasure , 0x4782, 0x0000 }, { AutoFocusInstableFocusMeasureStatus_bCountStableFocusMeasure , 0x4784, 0x0000 }, + +// page "AutoFocusLFMFullSearchStatus" [read only] +// { AutoFocusLFMFullSearchStatus_bPrevState_AFFS , 0x4800, 0x0000 }, { AutoFocusLFMFullSearchStatus_bState_AFFS , 0x4802, 0x0000 }, { AutoFocusLFMFullSearchStatus_bNextState_AFFS , 0x4804, 0x0000 }, { AutoFocusLFMFullSearchStatus_bCountFullSearchContinuouslyIncreaseValue , 0x4806, 0x0000 }, + +// page "AutoFocusMZFullSearchStatus" [read only] +// { AutoFocusMZFullSearchStatus_bFS_PrevState , 0x4880, 0x0000 }, { AutoFocusMZFullSearchStatus_bFS_State , 0x4882, 0x0000 }, { AutoFocusMZFullSearchStatus_bFS_NextState , 0x4884, 0x0000 }, { AutoFocusMZFullSearchStatus_bMaxMaxRegionPositionIndex , 0x4886, 0x0000 }, -{ MiscPageElements_fConvertMultiByteReadsIntoSingleByte , 0x4900, 0x0001 }, -{ MiscPageElements_bDelayAfterSettingXshutdown , 0x4902, 0x00f0 }, + +// page "MiscPageElements" +// + { MiscPageElements_fConvertMultiByteReadsIntoSingleByte ,0x4900 ,0x01}, + { MiscPageElements_bDelayAfterSettingXshutdown , 0x4902 ,0xf0}, { MiscPageElements_fEnableIntelligentFlash , 0x4904, 0x0000 }, { MiscPageElements_fEligibleFrameForMetering , 0x4906, 0x0000 }, { MiscPageElements_fFlashGunIlluminatedFrameStreamed , 0x4908, 0x0000 }, { MiscPageElements_VpipCut , 0x490a, 0x0000 }, { MiscPageElements_bGPIOClockFrequency_Mhz , 0x490c, 0x0000 }, @@ -2640,42 +3518,60 @@ struct nomadik_vpip_param vpip_default_p { MiscPageElements_fEnableDelayWhenStoppingSensor , 0x4914, 0x0000 }, { MiscPageElements_fTriggerFlashOnStreaming , 0x4916, 0x0000 }, { MiscPageElements_fDoNotOutputFrameInIntelligentFlash , 0x4918, 0x0000 }, { MiscPageElements_fDisableToshibaInit , 0x491a, 0x0000 }, { MiscPageElements_bNumberofFramesTobeSkippedByRx , 0x491c, 0x0000 }, + +// page "CutBMasterI2cStatus" [read only] +// { CutBMasterI2cStatus_bWriteFifoUseCount , 0x4980, 0x0000 }, + +// page "MasterI2cClockControl" [mode static] +// { MasterI2cClockControl_bCountFall , 0x4a00, 0x0000 }, { MasterI2cClockControl_bCountRise , 0x4a02, 0x0000 }, { MasterI2cClockControl_bCountHigh , 0x4a04, 0x0000 }, { MasterI2cClockControl_bCountBuffer , 0x4a06, 0x0000 }, { MasterI2cClockControl_bCountHoldData , 0x4a08, 0x0000 }, { MasterI2cClockControl_bCountSetupData , 0x4a0a, 0x0000 }, { MasterI2cClockControl_bCountHoldStart , 0x4a0c, 0x0000 }, { MasterI2cClockControl_bCountSetupStart , 0x4a0e, 0x0000 }, { MasterI2cClockControl_bCountSetupStop , 0x4a10, 0x0000 }, + +// page "ZoomMgrFOVCtrl" +// { ZoomMgrFOVCtrl_bShiftCenter , 0x4a80, 0x0000 }, { ZoomMgrFOVCtrl_uwXOrigin_LSByte , 0x4a84, 0x0000 }, { ZoomMgrFOVCtrl_uwXOrigin_MSByte , 0x4a83, 0x0000 }, { ZoomMgrFOVCtrl_uwYOrigin_LSByte , 0x4a88, 0x0000 }, { ZoomMgrFOVCtrl_uwYOrigin_MSByte , 0x4a87, 0x0000 }, { ZoomMgrFOVCtrl_fRestrictMaxFOVToChosenFOV , 0x4a8a, 0x0000 }, { ZoomMgrFOVCtrl_fCalculateMinFOVAlways , 0x4a8c, 0x0000 }, { ZoomMgrFOVCtrl_fInhibitMaxFOVAtModeStaticChange , 0x4a8e, 0x0000 }, + +// page "ZoomMgrSpeedInfo" [read only] +// { ZoomMgrSpeedInfo_bNumberOfFramesOnHold , 0x4b00, 0x0000 }, { ZoomMgrSpeedInfo_bDelay_frames , 0x4b02, 0x0000 }, { ZoomMgrSpeedInfo_uwTotalDelay_frames_LSByte , 0x4b06, 0x0000 }, { ZoomMgrSpeedInfo_uwTotalDelay_frames_MSByte , 0x4b05, 0x0000 }, { ZoomMgrSpeedInfo_bNumberOfZoomSteps , 0x4b08, 0x0000 }, + +// page "ZoomMgrStripeCtrl" +// { ZoomMgrStripeCtrl_bStripeControl , 0x4b80, 0x0000 }, { ZoomMgrStripeCtrl_uwStripeStartAddr_LSByte , 0x4b84, 0x0000 }, { ZoomMgrStripeCtrl_uwStripeStartAddr_MSByte , 0x4b83, 0x0000 }, { ZoomMgrStripeCtrl_uwStripeSize_LSByte , 0x4b88, 0x0000 }, { ZoomMgrStripeCtrl_uwStripeSize_MSByte , 0x4b87, 0x0000 }, { ZoomMgrStripeCtrl_uwStripeInMinLineSize_LSByte , 0x4b8c, 0x0000 }, { ZoomMgrStripeCtrl_uwStripeInMinLineSize_MSByte , 0x4b8b, 0x0000 }, { ZoomMgrStripeCtrl_uwBmsFrameLength_LSByte , 0x4b90, 0x0000 }, { ZoomMgrStripeCtrl_uwBmsFrameLength_MSByte , 0x4b8f, 0x0000 }, + +// page "LftStripeParam" +// { LftStripeParam_uwGPSISize_LSByte , 0x4c02, 0x0000 }, { LftStripeParam_uwGPSISize_MSByte , 0x4c01, 0x0000 }, { LftStripeParam_uwGPSOSize_LSByte , 0x4c06, 0x0000 }, { LftStripeParam_uwGPSOSize_MSByte , 0x4c05, 0x0000 }, { LftStripeParam_uwRightBorder_LSByte , 0x4c0a, 0x0000 }, @@ -2692,10 +3588,13 @@ struct nomadik_vpip_param vpip_default_p { LftStripeParam_uwStripeInCropSize_MSByte , 0x4c1d, 0x0000 }, { LftStripeParam_uwStripeOutCropStart_LSByte , 0x4c22, 0x0000 }, { LftStripeParam_uwStripeOutCropStart_MSByte , 0x4c21, 0x0000 }, { LftStripeParam_uwStripeOutCropSize_LSByte , 0x4c26, 0x0000 }, { LftStripeParam_uwStripeOutCropSize_MSByte , 0x4c25, 0x0000 }, + +// page "RgtStripeParam" +// { RgtStripeParam_uwGPSISize_LSByte , 0x4c82, 0x0000 }, { RgtStripeParam_uwGPSISize_MSByte , 0x4c81, 0x0000 }, { RgtStripeParam_uwGPSOSize_LSByte , 0x4c86, 0x0000 }, { RgtStripeParam_uwGPSOSize_MSByte , 0x4c85, 0x0000 }, { RgtStripeParam_uwRightBorder_LSByte , 0x4c8a, 0x0000 }, @@ -2712,34 +3611,70 @@ struct nomadik_vpip_param vpip_default_p { RgtStripeParam_uwStripeInCropSize_MSByte , 0x4c9d, 0x0000 }, { RgtStripeParam_uwStripeOutCropStart_LSByte , 0x4ca2, 0x0000 }, { RgtStripeParam_uwStripeOutCropStart_MSByte , 0x4ca1, 0x0000 }, { RgtStripeParam_uwStripeOutCropSize_LSByte , 0x4ca6, 0x0000 }, { RgtStripeParam_uwStripeOutCropSize_MSByte , 0x4ca5, 0x0000 }, + +// page "DigitalGainStatus" [read only] +// { DigitalGainStatus_uwCodedGreen1Gain_LSByte , 0x4d02, 0x0000 }, { DigitalGainStatus_uwCodedGreen1Gain_MSByte , 0x4d01, 0x0000 }, { DigitalGainStatus_uwCodedRedGain_LSByte , 0x4d06, 0x0000 }, { DigitalGainStatus_uwCodedRedGain_MSByte , 0x4d05, 0x0000 }, { DigitalGainStatus_uwCodedBlueGain_LSByte , 0x4d0a, 0x0000 }, { DigitalGainStatus_uwCodedBlueGain_MSByte , 0x4d09, 0x0000 }, { DigitalGainStatus_uwCodedGreen2Gain_LSByte , 0x4d0e, 0x0000 }, { DigitalGainStatus_uwCodedGreen2Gain_MSByte , 0x4d0d, 0x0000 }, + +// page "OffsetCompensationStatus" [read only] +// { OffsetCompensationStatus_uwOffset_LSByte , 0x4d82, 0x0000 }, { OffsetCompensationStatus_uwOffset_MSByte , 0x4d81, 0x0000 }, { OffsetCompensationStatus_fpOffsetCompensationGain_LSByte , 0x4d86, 0x0000 }, { OffsetCompensationStatus_fpOffsetCompensationGain_MSByte , 0x4d85, 0x0000 }, + +// page "AntiFlickerExposureStatus" [read only] +// { AntiFlickerExposureStatus_fpFlickerFreePeriod_us_LSByte , 0x4e02, 0x0000 }, { AntiFlickerExposureStatus_fpFlickerFreePeriod_us_MSByte , 0x4e01, 0x0000 }, { AntiFlickerExposureStatus_fpGainedFlickerFreeTimePeriod_us_LSByte , 0x4e06, 0x0000 }, { AntiFlickerExposureStatus_fpGainedFlickerFreeTimePeriod_us_MSByte , 0x4e05, 0x0000 }, { AntiFlickerExposureStatus_uwMaxFlickerFreeBunches_LSByte , 0x4e0a, 0x0000 }, { AntiFlickerExposureStatus_uwMaxFlickerFreeBunches_MSByte , 0x4e09, 0x0000 }, { AntiFlickerExposureStatus_fpConstrainedFlickerFreePeriod_us_LSByte , 0x4e0e, 0x0000 }, { AntiFlickerExposureStatus_fpConstrainedFlickerFreePeriod_us_MSByte , 0x4e0d, 0x0000 }, + +// page "ModuleEnables" +// { ModuleEnables_fDisableCho , 0x4e80, 0x0000 }, { ModuleEnables_fDisableChg , 0x4e82, 0x0000 }, + +// page "DummyPage1" [read only] +// { DummyPage1_bDummyPageElement , 0x4f00, 0x0000 }, + +// page "DummyPage2" [read only] +// { DummyPage2_bDummyPageElement , 0x4f80, 0x0000 }, + +// page "SensorSetupFarSensor" +// +/* { SensorSetupFarSensor_uwGuaranteedDataSaturationLevel_LSByte , 0x5002 ,0x0000}, + { SensorSetupFarSensor_uwGuaranteedDataSaturationLevel_MSByte , 0x5001 ,0x0000}, + { SensorSetupFarSensor_uwMinimumSensorRxPixelValue_LSByte , 0x5006 ,0x0000}, + { SensorSetupFarSensor_uwMinimumSensorRxPixelValue_MSByte , 0x5005 ,0x0000}, + { SensorSetupFarSensor_uwMaximumSensorRxPixelValue_LSByte , 0x500a ,0x0000}, + { SensorSetupFarSensor_uwMaximumSensorRxPixelValue_MSByte , 0x5009 ,0x0000}, + { SensorSetupFarSensor_fpRedTiltGain_LSByte , 0x500e ,0x0000}, + { SensorSetupFarSensor_fpRedTiltGain_MSByte , 0x500d ,0x0000}, + { SensorSetupFarSensor_fpGreenTiltGain_LSByte , 0x5012 ,0x0000}, + { SensorSetupFarSensor_fpGreenTiltGain_MSByte , 0x5011 ,0x0000}, + { SensorSetupFarSensor_fpBlueTiltGain_LSByte , 0x5016 ,0x0000}, + { SensorSetupFarSensor_fpBlueTiltGain_MSByte , 0x5015 ,0x0000}, + { SensorSetupFarSensor_BlackCorrectionOffset , 0x5018 ,0x0000}, +*/ + { SensorSetupFarSensor_uwGuaranteedDataSaturationLevel_LSByte , 0x5002, 0x0000 }, { SensorSetupFarSensor_uwGuaranteedDataSaturationLevel_MSByte , 0x5001, 0x043f }, { SensorSetupFarSensor_uwMinimumSensorRxPixelValue_LSByte , 0x5006, 0x0000 }, { SensorSetupFarSensor_uwMinimumSensorRxPixelValue_MSByte , 0x5005, 0x0004 }, { SensorSetupFarSensor_uwMaximumSensorRxPixelValue_LSByte , 0x500a, 0x0000 }, @@ -2749,10 +3684,13 @@ struct nomadik_vpip_param vpip_default_p { SensorSetupFarSensor_fpGreenTiltGain_LSByte , 0x5012, 0x0000 }, { SensorSetupFarSensor_fpGreenTiltGain_MSByte , 0x5011, 0x3e00 }, { SensorSetupFarSensor_fpBlueTiltGain_LSByte , 0x5016, 0x0000 }, { SensorSetupFarSensor_fpBlueTiltGain_MSByte , 0x5015, 0x3e00 }, { SensorSetupFarSensor_BlackCorrectionOffset , 0x5018, 0x0000 }, + +// page "SensorSetupNearSensor" +// { SensorSetupNearSensor_uwGuaranteedDataSaturationLevel_LSByte , 0x5082, 0x0000 }, { SensorSetupNearSensor_uwGuaranteedDataSaturationLevel_MSByte , 0x5081, 0x0000 }, { SensorSetupNearSensor_uwMinimumSensorRxPixelValue_LSByte , 0x5086, 0x0000 }, { SensorSetupNearSensor_uwMinimumSensorRxPixelValue_MSByte , 0x5085, 0x0000 }, { SensorSetupNearSensor_uwMaximumSensorRxPixelValue_LSByte , 0x508a, 0x0000 }, @@ -2762,10 +3700,13 @@ struct nomadik_vpip_param vpip_default_p { SensorSetupNearSensor_fpGreenTiltGain_LSByte , 0x5092, 0x0000 }, { SensorSetupNearSensor_fpGreenTiltGain_MSByte , 0x5091, 0x0000 }, { SensorSetupNearSensor_fpBlueTiltGain_LSByte , 0x5096, 0x0000 }, { SensorSetupNearSensor_fpBlueTiltGain_MSByte , 0x5095, 0x0000 }, { SensorSetupNearSensor_BlackCorrectionOffset , 0x5098, 0x0000 }, + +// page "ToshibaOtpRead" [read only] +// { ToshibaOtpRead_otp_inf_2 , 0x5100, 0x0000 }, { ToshibaOtpRead_otp_inf_1 , 0x5102, 0x0000 }, { ToshibaOtpRead_otp_inf_0 , 0x5104, 0x0000 }, { ToshibaOtpRead_otp_mac_2 , 0x5106, 0x0000 }, { ToshibaOtpRead_otp_mac_1 , 0x5108, 0x0000 }, @@ -2773,20 +3714,71 @@ struct nomadik_vpip_param vpip_default_p { ToshibaOtpRead_otp_posA_1 , 0x510c, 0x0000 }, { ToshibaOtpRead_otp_posA_0 , 0x510e, 0x0000 }, { ToshibaOtpRead_otp_posB_1 , 0x5110, 0x0000 }, { ToshibaOtpRead_otp_posB_0 , 0x5112, 0x0000 }, { ToshibaOtpRead_otp_register_map_ver , 0x5114, 0x0000 }, + +// page "NormalisedWhiteBalanceGains" [read only] +// { NormalisedWhiteBalanceGains_fpNormalisedRedGain_LSByte , 0x5182, 0x0000 }, { NormalisedWhiteBalanceGains_fpNormalisedRedGain_MSByte , 0x5181, 0x0000 }, + +// page "ReferenceIlluminantCasts" +// + /* + { ReferenceIlluminantCasts_fpCAST0_LSByte , 0x5202 ,0x0000}, + { ReferenceIlluminantCasts_fpCAST0_MSByte , 0x5201 ,0x0000}, + { ReferenceIlluminantCasts_fpCAST1_LSByte , 0x5206 ,0x0000}, + { ReferenceIlluminantCasts_fpCAST1_MSByte , 0x5205 ,0x0000}, + { ReferenceIlluminantCasts_fpCAST2_LSByte , 0x520a ,0x0000}, + { ReferenceIlluminantCasts_fpCAST2_MSByte , 0x5209 ,0x0000}, + { ReferenceIlluminantCasts_fpCAST3_LSByte , 0x520e ,0x0000}, + { ReferenceIlluminantCasts_fpCAST3_MSByte , 0x520d ,0x0000}, + */ { ReferenceIlluminantCasts_fpCAST0_LSByte , 0x5202, 0x0000 }, { ReferenceIlluminantCasts_fpCAST0_MSByte , 0x5201, 0x38b8 }, { ReferenceIlluminantCasts_fpCAST1_LSByte , 0x5206, 0x0000 }, { ReferenceIlluminantCasts_fpCAST1_MSByte , 0x5205, 0x396d }, { ReferenceIlluminantCasts_fpCAST2_LSByte , 0x520a, 0x0000 }, { ReferenceIlluminantCasts_fpCAST2_MSByte , 0x5209, 0x3a1b }, { ReferenceIlluminantCasts_fpCAST3_LSByte , 0x520e, 0x0000 }, { ReferenceIlluminantCasts_fpCAST3_MSByte , 0x520d, 0x3af2 }, + +// page "AdaptiveAVParameter_B" +// + /* + { AdaptiveAVParameter_B_bAvUnityOffset_Day , 0x5280 ,0x0000}, + { AdaptiveAVParameter_B_bAvCoeffR2_Day , 0x5282 ,0x0000}, + { AdaptiveAVParameter_B_bAvCoeffR4_Day , 0x5284 ,0x0000}, + { AdaptiveAVParameter_B_wAvHOffset_Day_LSByte , 0x5288 ,0x0000}, + { AdaptiveAVParameter_B_wAvHOffset_Day_MSByte , 0x5287 ,0x0000}, + { AdaptiveAVParameter_B_wAvVOffset_Day_LSByte , 0x528c ,0x0000}, + { AdaptiveAVParameter_B_wAvVOffset_Day_MSByte , 0x528b ,0x0000}, + { AdaptiveAVParameter_B_bAvUnityOffset_COO , 0x528e ,0x0000}, + { AdaptiveAVParameter_B_bAvCoeffR2_COO , 0x5290 ,0x0000}, + { AdaptiveAVParameter_B_bAvCoeffR4_COO , 0x5292 ,0x0000}, + { AdaptiveAVParameter_B_wAvHOffset_COO_LSByte , 0x5296 ,0x0000}, + { AdaptiveAVParameter_B_wAvHOffset_COO_MSByte , 0x5295 ,0x0000}, + { AdaptiveAVParameter_B_wAvVOffset_COO_LSByte , 0x529a ,0x0000}, + { AdaptiveAVParameter_B_wAvVOffset_COO_MSByte , 0x5299 ,0x0000}, + { AdaptiveAVParameter_B_bAvUnityOffset_INC , 0x529c ,0x0000}, + { AdaptiveAVParameter_B_bAvCoeffR2_INC , 0x529e ,0x0000}, + { AdaptiveAVParameter_B_bAvCoeffR4_INC , 0x52a0 ,0x0000}, + { AdaptiveAVParameter_B_wAvHOffset_INC_LSByte , 0x52a4 ,0x0000}, + { AdaptiveAVParameter_B_wAvHOffset_INC_MSByte , 0x52a3 ,0x0000}, + { AdaptiveAVParameter_B_wAvVOffset_INC_LSByte , 0x52a8 ,0x0000}, + { AdaptiveAVParameter_B_wAvVOffset_INC_MSByte , 0x52a7 ,0x0000}, + { AdaptiveAVParameter_B_bAvUnityOffset_HOR , 0x52aa ,0x0000}, + { AdaptiveAVParameter_B_bAvCoeffR2_HOR , 0x52ac ,0x0000}, + { AdaptiveAVParameter_B_bAvCoeffR4_HOR , 0x52ae ,0x0000}, + { AdaptiveAVParameter_B_wAvHOffset_HOR_LSByte , 0x52b2 ,0x0000}, + { AdaptiveAVParameter_B_wAvHOffset_HOR_MSByte , 0x52b1 ,0x0000}, + { AdaptiveAVParameter_B_wAvVOffset_HOR_LSByte , 0x52b6 ,0x0000}, + { AdaptiveAVParameter_B_wAvVOffset_HOR_MSByte , 0x52b5 ,0x0000}, +*/ + + { AdaptiveAVParameter_B_bAvUnityOffset_Day , 0x5280, 0x0040 }, { AdaptiveAVParameter_B_bAvCoeffR2_Day , 0x5282, 0x003e }, { AdaptiveAVParameter_B_bAvCoeffR4_Day , 0x5284, 0x00e8 }, { AdaptiveAVParameter_B_wAvHOffset_Day_LSByte , 0x5288, 0x0000 }, { AdaptiveAVParameter_B_wAvHOffset_Day_MSByte , 0x5287, 0x0003 }, @@ -2811,10 +3803,42 @@ struct nomadik_vpip_param vpip_default_p { AdaptiveAVParameter_B_bAvCoeffR4_HOR , 0x52ae, 0x00f0 }, { AdaptiveAVParameter_B_wAvHOffset_HOR_LSByte , 0x52b2, 0x0000 }, { AdaptiveAVParameter_B_wAvHOffset_HOR_MSByte , 0x52b1, 0x000b }, { AdaptiveAVParameter_B_wAvVOffset_HOR_LSByte , 0x52b6, 0x0000 }, { AdaptiveAVParameter_B_wAvVOffset_HOR_MSByte , 0x52b5, 0x001d }, + +// page "AdaptiveAVParameter_GB" +// +/* { AdaptiveAVParameter_GB_bAvUnityOffset_Day , 0x5300 ,0x0000}, + { AdaptiveAVParameter_GB_bAvCoeffR2_Day , 0x5302 ,0x0000}, + { AdaptiveAVParameter_GB_bAvCoeffR4_Day , 0x5304 ,0x0000}, + { AdaptiveAVParameter_GB_wAvHOffset_Day_LSByte , 0x5308 ,0x0000}, + { AdaptiveAVParameter_GB_wAvHOffset_Day_MSByte , 0x5307 ,0x0000}, + { AdaptiveAVParameter_GB_wAvVOffset_Day_LSByte , 0x530c ,0x0000}, + { AdaptiveAVParameter_GB_wAvVOffset_Day_MSByte , 0x530b ,0x0000}, + { AdaptiveAVParameter_GB_bAvUnityOffset_COO , 0x530e ,0x0000}, + { AdaptiveAVParameter_GB_bAvCoeffR2_COO , 0x5310 ,0x0000}, + { AdaptiveAVParameter_GB_bAvCoeffR4_COO , 0x5312 ,0x0000}, + { AdaptiveAVParameter_GB_wAvHOffset_COO_LSByte , 0x5316 ,0x0000}, + { AdaptiveAVParameter_GB_wAvHOffset_COO_MSByte , 0x5315 ,0x0000}, + { AdaptiveAVParameter_GB_wAvVOffset_COO_LSByte , 0x531a ,0x0000}, + { AdaptiveAVParameter_GB_wAvVOffset_COO_MSByte , 0x5319 ,0x0000}, + { AdaptiveAVParameter_GB_bAvUnityOffset_INC , 0x531c ,0x0000}, + { AdaptiveAVParameter_GB_bAvCoeffR2_INC , 0x531e ,0x0000}, + { AdaptiveAVParameter_GB_bAvCoeffR4_INC , 0x5320 ,0x0000}, + { AdaptiveAVParameter_GB_wAvHOffset_INC_LSByte , 0x5324 ,0x0000}, + { AdaptiveAVParameter_GB_wAvHOffset_INC_MSByte , 0x5323 ,0x0000}, + { AdaptiveAVParameter_GB_wAvVOffset_INC_LSByte , 0x5328 ,0x0000}, + { AdaptiveAVParameter_GB_wAvVOffset_INC_MSByte , 0x5327 ,0x0000}, + { AdaptiveAVParameter_GB_bAvUnityOffset_HOR , 0x532a ,0x0000}, + { AdaptiveAVParameter_GB_bAvCoeffR2_HOR , 0x532c ,0x0000}, + { AdaptiveAVParameter_GB_bAvCoeffR4_HOR , 0x532e ,0x0000}, + { AdaptiveAVParameter_GB_wAvHOffset_HOR_LSByte , 0x5332 ,0x0000}, + { AdaptiveAVParameter_GB_wAvHOffset_HOR_MSByte , 0x5331 ,0x0000}, + { AdaptiveAVParameter_GB_wAvVOffset_HOR_LSByte , 0x5336 ,0x0000}, + { AdaptiveAVParameter_GB_wAvVOffset_HOR_MSByte , 0x5335 ,0x0000}, +*/ { AdaptiveAVParameter_GB_bAvUnityOffset_Day , 0x5300, 0x0040 }, { AdaptiveAVParameter_GB_bAvCoeffR2_Day , 0x5302, 0x0047 }, { AdaptiveAVParameter_GB_bAvCoeffR4_Day , 0x5304, 0x00ec }, { AdaptiveAVParameter_GB_wAvHOffset_Day_LSByte , 0x5308, 0x0000 }, { AdaptiveAVParameter_GB_wAvHOffset_Day_MSByte , 0x5307, 0x000a }, @@ -2839,10 +3863,43 @@ struct nomadik_vpip_param vpip_default_p { AdaptiveAVParameter_GB_bAvCoeffR4_HOR , 0x532e, 0x00f0 }, { AdaptiveAVParameter_GB_wAvHOffset_HOR_LSByte , 0x5332, 0x0000 }, { AdaptiveAVParameter_GB_wAvHOffset_HOR_MSByte , 0x5331, 0x000c }, { AdaptiveAVParameter_GB_wAvVOffset_HOR_LSByte , 0x5336, 0x0000 }, { AdaptiveAVParameter_GB_wAvVOffset_HOR_MSByte , 0x5335, 0x0014 }, +// page "AdaptiveAVParameter_GR" +// + /* + { AdaptiveAVParameter_GR_bAvUnityOffset_Day , 0x5380 ,0x0000}, + { AdaptiveAVParameter_GR_bAvCoeffR2_Day , 0x5382 ,0x0000}, + { AdaptiveAVParameter_GR_bAvCoeffR4_Day , 0x5384 ,0x0000}, + { AdaptiveAVParameter_GR_wAvHOffset_Day_LSByte , 0x5388 ,0x0000}, + { AdaptiveAVParameter_GR_wAvHOffset_Day_MSByte , 0x5387 ,0x0000}, + { AdaptiveAVParameter_GR_wAvVOffset_Day_LSByte , 0x538c ,0x0000}, + { AdaptiveAVParameter_GR_wAvVOffset_Day_MSByte , 0x538b ,0x0000}, + { AdaptiveAVParameter_GR_bAvUnityOffset_COO , 0x538e ,0x0000}, + { AdaptiveAVParameter_GR_bAvCoeffR2_COO , 0x5390 ,0x0000}, + { AdaptiveAVParameter_GR_bAvCoeffR4_COO , 0x5392 ,0x0000}, + { AdaptiveAVParameter_GR_wAvHOffset_COO_LSByte , 0x5396 ,0x0000}, + { AdaptiveAVParameter_GR_wAvHOffset_COO_MSByte , 0x5395 ,0x0000}, + { AdaptiveAVParameter_GR_wAvVOffset_COO_LSByte , 0x539a ,0x0000}, + { AdaptiveAVParameter_GR_wAvVOffset_COO_MSByte , 0x5399 ,0x0000}, + { AdaptiveAVParameter_GR_bAvUnityOffset_INC , 0x539c ,0x0000}, + { AdaptiveAVParameter_GR_bAvCoeffR2_INC , 0x539e ,0x0000}, + { AdaptiveAVParameter_GR_bAvCoeffR4_INC , 0x53a0 ,0x0000}, + { AdaptiveAVParameter_GR_wAvHOffset_INC_LSByte , 0x53a4 ,0x0000}, + { AdaptiveAVParameter_GR_wAvHOffset_INC_MSByte , 0x53a3 ,0x0000}, + { AdaptiveAVParameter_GR_wAvVOffset_INC_LSByte , 0x53a8 ,0x0000}, + { AdaptiveAVParameter_GR_wAvVOffset_INC_MSByte , 0x53a7 ,0x0000}, + { AdaptiveAVParameter_GR_bAvUnityOffset_HOR , 0x53aa ,0x0000}, + { AdaptiveAVParameter_GR_bAvCoeffR2_HOR , 0x53ac ,0x0000}, + { AdaptiveAVParameter_GR_bAvCoeffR4_HOR , 0x53ae ,0x0000}, + { AdaptiveAVParameter_GR_wAvHOffset_HOR_LSByte , 0x53b2 ,0x0000}, + { AdaptiveAVParameter_GR_wAvHOffset_HOR_MSByte , 0x53b1 ,0x0000}, + { AdaptiveAVParameter_GR_wAvVOffset_HOR_LSByte , 0x53b6 ,0x0000}, + { AdaptiveAVParameter_GR_wAvVOffset_HOR_MSByte , 0x53b5 ,0x0000}, +*/ + { AdaptiveAVParameter_GR_bAvUnityOffset_Day , 0x5380, 0x0040 }, { AdaptiveAVParameter_GR_bAvCoeffR2_Day , 0x5382, 0x0048 }, { AdaptiveAVParameter_GR_bAvCoeffR4_Day , 0x5384, 0x00e8 }, { AdaptiveAVParameter_GR_wAvHOffset_Day_LSByte , 0x5388, 0x0000 }, { AdaptiveAVParameter_GR_wAvHOffset_Day_MSByte , 0x5387, 0x0009 }, @@ -2867,10 +3924,42 @@ struct nomadik_vpip_param vpip_default_p { AdaptiveAVParameter_GR_bAvCoeffR4_HOR , 0x53ae, 0x00ef }, { AdaptiveAVParameter_GR_wAvHOffset_HOR_LSByte , 0x53b2, 0x0000 }, { AdaptiveAVParameter_GR_wAvHOffset_HOR_MSByte , 0x53b1, 0x000c }, { AdaptiveAVParameter_GR_wAvVOffset_HOR_LSByte , 0x53b6, 0x0000 }, { AdaptiveAVParameter_GR_wAvVOffset_HOR_MSByte , 0x53b5, 0x0001 }, +// page "AdaptiveAVParameter_R" +// + /* + { AdaptiveAVParameter_R_bAvUnityOffset_Day , 0x5400 ,0x0000}, + { AdaptiveAVParameter_R_bAvCoeffR2_Day , 0x5402 ,0x0000}, + { AdaptiveAVParameter_R_bAvCoeffR4_Day , 0x5404 ,0x0000}, + { AdaptiveAVParameter_R_wAvHOffset_Day_LSByte , 0x5408 ,0x0000}, + { AdaptiveAVParameter_R_wAvHOffset_Day_MSByte , 0x5407 ,0x0000}, + { AdaptiveAVParameter_R_wAvVOffset_Day_LSByte , 0x540c ,0x0000}, + { AdaptiveAVParameter_R_wAvVOffset_Day_MSByte , 0x540b ,0x0000}, + { AdaptiveAVParameter_R_bAvUnityOffset_COO , 0x540e ,0x0000}, + { AdaptiveAVParameter_R_bAvCoeffR2_COO , 0x5410 ,0x0000}, + { AdaptiveAVParameter_R_bAvCoeffR4_COO , 0x5412 ,0x0000}, + { AdaptiveAVParameter_R_wAvHOffset_COO_LSByte , 0x5416 ,0x0000}, + { AdaptiveAVParameter_R_wAvHOffset_COO_MSByte , 0x5415 ,0x0000}, + { AdaptiveAVParameter_R_wAvVOffset_COO_LSByte , 0x541a ,0x0000}, + { AdaptiveAVParameter_R_wAvVOffset_COO_MSByte , 0x5419 ,0x0000}, + { AdaptiveAVParameter_R_bAvUnityOffset_INC , 0x541c ,0x0000}, + { AdaptiveAVParameter_R_bAvCoeffR2_INC , 0x541e ,0x0000}, + { AdaptiveAVParameter_R_bAvCoeffR4_INC , 0x5420 ,0x0000}, + { AdaptiveAVParameter_R_wAvHOffset_INC_LSByte , 0x5424 ,0x0000}, + { AdaptiveAVParameter_R_wAvHOffset_INC_MSByte , 0x5423 ,0x0000}, + { AdaptiveAVParameter_R_wAvVOffset_INC_LSByte , 0x5428 ,0x0000}, + { AdaptiveAVParameter_R_wAvVOffset_INC_MSByte , 0x5427 ,0x0000}, + { AdaptiveAVParameter_R_bAvUnityOffset_HOR , 0x542a ,0x0000}, + { AdaptiveAVParameter_R_bAvCoeffR2_HOR , 0x542c ,0x0000}, + { AdaptiveAVParameter_R_bAvCoeffR4_HOR , 0x542e ,0x0000}, + { AdaptiveAVParameter_R_wAvHOffset_HOR_LSByte , 0x5432 ,0x0000}, + { AdaptiveAVParameter_R_wAvHOffset_HOR_MSByte , 0x5431 ,0x0000}, + { AdaptiveAVParameter_R_wAvVOffset_HOR_LSByte , 0x5436 ,0x0000}, + { AdaptiveAVParameter_R_wAvVOffset_HOR_MSByte , 0x5435 ,0x0000}, + */ { AdaptiveAVParameter_R_bAvUnityOffset_Day , 0x5400, 0x0040 }, { AdaptiveAVParameter_R_bAvCoeffR2_Day , 0x5402, 0x0067 }, { AdaptiveAVParameter_R_bAvCoeffR4_Day , 0x5404, 0x00f6 }, { AdaptiveAVParameter_R_wAvHOffset_Day_LSByte , 0x5408, 0x0000 }, { AdaptiveAVParameter_R_wAvHOffset_Day_MSByte , 0x5407, 0x000a }, @@ -2895,21 +3984,43 @@ struct nomadik_vpip_param vpip_default_p { AdaptiveAVParameter_R_bAvCoeffR4_HOR , 0x542e, 0x00f7 }, { AdaptiveAVParameter_R_wAvHOffset_HOR_LSByte , 0x5432, 0x0000 }, { AdaptiveAVParameter_R_wAvHOffset_HOR_MSByte , 0x5431, 0x000a }, { AdaptiveAVParameter_R_wAvVOffset_HOR_LSByte , 0x5436, 0x0000 }, { AdaptiveAVParameter_R_wAvVOffset_HOR_MSByte , 0x5435, 0x0004 }, + +// page "ContrastStretchControl" +// { ContrastStretchControl_fEnableContrastStretch , 0x5480, 0x0000 }, { ContrastStretchControl_bMode , 0x5482, 0x0000 }, { ContrastStretchControl_bAccColour , 0x5484, 0x0000 }, { ContrastStretchControl_bBlackThreshold , 0x5486, 0x0000 }, { ContrastStretchControl_bWhiteThreshold , 0x5488, 0x0000 }, + +// page "ContrastStretchStatus" [read only] +// { ContrastStretchStatus_uBlackBinAThreshold_hi , 0x5500, 0x0000 }, { ContrastStretchStatus_uBlackBinBThreshold_hi , 0x5502, 0x0000 }, { ContrastStretchStatus_uWhiteBinAThreshold_lo , 0x5504, 0x0000 }, { ContrastStretchStatus_uWhiteBinBThreshold_lo , 0x5506, 0x0000 }, { ContrastStretchStatus_fpGain_LSByte , 0x550a, 0x0000 }, { ContrastStretchStatus_fpGain_MSByte , 0x5509, 0x0000 }, + +// page "DynamicConstrainedWBControls" +// + /* + { DynamicConstrainedWBControls_fpRedA_LSByte , 0x5582 ,0x0000}, + { DynamicConstrainedWBControls_fpRedA_MSByte , 0x5581 ,0x0000}, + { DynamicConstrainedWBControls_fpBlueA_LSByte , 0x5586 ,0x0000}, + { DynamicConstrainedWBControls_fpBlueA_MSByte , 0x5585 ,0x0000}, + { DynamicConstrainedWBControls_fpDamperLowThreshold_LSByte , 0x558a ,0x0000}, + { DynamicConstrainedWBControls_fpDamperLowThreshold_MSByte , 0x5589 ,0x0000}, + { DynamicConstrainedWBControls_fpMinimumDamperOutput_LSByte , 0x558e ,0x0000}, + { DynamicConstrainedWBControls_fpMinimumDamperOutput_MSByte , 0x558d ,0x0000}, + { DynamicConstrainedWBControls_fpDamperHighThreshold_LSByte , 0x5592 ,0x0000}, + { DynamicConstrainedWBControls_fpDamperHighThreshold_MSByte , 0x5591 ,0x0000}, + { DynamicConstrainedWBControls_fDamperDisable , 0x5594 ,0x0000}, +*/ { DynamicConstrainedWBControls_fpRedA_LSByte , 0x5582, 0x0000 }, { DynamicConstrainedWBControls_fpRedA_MSByte , 0x5581, 0x3881 }, { DynamicConstrainedWBControls_fpBlueA_LSByte , 0x5586, 0x0000 }, { DynamicConstrainedWBControls_fpBlueA_MSByte , 0x5585, 0x3c68 }, { DynamicConstrainedWBControls_fpDamperLowThreshold_LSByte , 0x558a, 0x0000 }, @@ -2917,10 +4028,12 @@ struct nomadik_vpip_param vpip_default_p { DynamicConstrainedWBControls_fpMinimumDamperOutput_LSByte , 0x558e, 0x0000 }, { DynamicConstrainedWBControls_fpMinimumDamperOutput_MSByte , 0x558d, 0x3a66 }, { DynamicConstrainedWBControls_fpDamperHighThreshold_LSByte , 0x5592, 0x0000 }, { DynamicConstrainedWBControls_fpDamperHighThreshold_MSByte , 0x5591, 0x5a71 }, { DynamicConstrainedWBControls_fDamperDisable , 0x5594, 0x0000 }, +// page "Toshiba_AF_NVM_Read" +// { Toshiba_AF_NVM_Read_NVM_Far2Near_inf_LSByte , 0x5602, 0x0000 }, { Toshiba_AF_NVM_Read_NVM_Far2Near_inf_MSByte , 0x5601, 0x0000 }, { Toshiba_AF_NVM_Read_NVM_Near2Far_inf_LSByte , 0x5606, 0x0000 }, { Toshiba_AF_NVM_Read_NVM_Near2Far_inf_MSByte , 0x5605, 0x0000 }, { Toshiba_AF_NVM_Read_NVM_Far2Near_mac_LSByte , 0x560a, 0x0000 }, @@ -2929,27 +4042,81 @@ struct nomadik_vpip_param vpip_default_p { Toshiba_AF_NVM_Read_NVM_Near2Far_mac_MSByte , 0x560d, 0x0000 }, { Toshiba_AF_NVM_Read_NVM_Pos_A_LSByte , 0x5612, 0x0000 }, { Toshiba_AF_NVM_Read_NVM_Pos_A_MSByte , 0x5611, 0x0000 }, { Toshiba_AF_NVM_Read_NVM_Pos_B_LSByte , 0x5616, 0x0000 }, { Toshiba_AF_NVM_Read_NVM_Pos_B_MSByte , 0x5615, 0x0000 }, + +// page "Toshiba_Vcm_Parameters" +// +/* + { Toshiba_Vcm_Parameters_wLowLevelMacroPos_LSByte , 0x5682 ,0x0000}, + { Toshiba_Vcm_Parameters_wLowLevelMacroPos_MSByte , 0x5681 ,0x0000}, + { Toshiba_Vcm_Parameters_wLowLevelInfinityPos_LSByte , 0x5686 ,0x0000}, + { Toshiba_Vcm_Parameters_wLowLevelInfinityPos_MSByte , 0x5685 ,0x0000}, + { Toshiba_Vcm_Parameters_bSlewControlModeEnable , 0x5688 ,0x0000}, + { Toshiba_Vcm_Parameters_bSlewModeForSmallerStep , 0x568a ,0x0000}, + { Toshiba_Vcm_Parameters_bSlewRateForSmallerStep , 0x568c ,0x0000}, + { Toshiba_Vcm_Parameters_bSlewModeForLargerStep , 0x568e ,0x0000}, + { Toshiba_Vcm_Parameters_bSlewRateForLargerStep , 0x5690 ,0x0000}, + { Toshiba_Vcm_Parameters_bThresholdStepSize , 0x5692 ,0x0000}, +*/ + + { Toshiba_Vcm_Parameters_wLowLevelMacroPos_LSByte , 0x5682, 0x0000 }, { Toshiba_Vcm_Parameters_wLowLevelMacroPos_MSByte , 0x5681, 0x0000 }, { Toshiba_Vcm_Parameters_wLowLevelInfinityPos_LSByte , 0x5686, 0x0000 }, { Toshiba_Vcm_Parameters_wLowLevelInfinityPos_MSByte , 0x5685, 0x0000 }, { Toshiba_Vcm_Parameters_bSlewControlModeEnable , 0x5688, 0x0000 }, { Toshiba_Vcm_Parameters_bSlewModeForSmallerStep , 0x568a, 0x0001 }, { Toshiba_Vcm_Parameters_bSlewRateForSmallerStep , 0x568c, 0x0004 }, { Toshiba_Vcm_Parameters_bSlewModeForLargerStep , 0x568e, 0x0008 }, { Toshiba_Vcm_Parameters_bSlewRateForLargerStep , 0x5690, 0x0007 }, { Toshiba_Vcm_Parameters_bThresholdStepSize , 0x5692, 0x00b0 }, + + +// page "Toshiba_Vcm_Status" [read only] +// { Toshiba_Vcm_Status_wLowLevelPos_LSByte , 0x5702, 0x0000 }, { Toshiba_Vcm_Status_wLowLevelPos_MSByte , 0x5701, 0x0000 }, + +// page "AdaptiveColourMatrix" +// + + { AdaptiveColourMatrix_fpNormalisedRedGain0_LSByte , 0x5782 ,0x0000}, + { AdaptiveColourMatrix_fpNormalisedRedGain0_MSByte , 0x5781 ,0x0000}, + { AdaptiveColourMatrix_fpNormalisedRedGain1_LSByte , 0x5786 ,0x0000}, + { AdaptiveColourMatrix_fpNormalisedRedGain1_MSByte , 0x5785 ,0x0000}, + { AdaptiveColourMatrix_bChooseAdaptiveColourMatrix , 0x5788 ,0x0000}, +/* { AdaptiveColourMatrix_fpNormalisedRedGain0_LSByte , 0x5782, 0x0000 }, { AdaptiveColourMatrix_fpNormalisedRedGain0_MSByte , 0x5781, 0x3adf }, { AdaptiveColourMatrix_fpNormalisedRedGain1_LSByte , 0x5786, 0x0000 }, { AdaptiveColourMatrix_fpNormalisedRedGain1_MSByte , 0x5785, 0x393f }, { AdaptiveColourMatrix_bChooseAdaptiveColourMatrix , 0x5788, 0x0001 }, +*/ +// page "ColourEngine1_ColourMatrixFarSensor" +// +/* + { ColourEngine1_ColourMatrixFarSensor_fpRInR_LSByte , 0x5802 ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpRInR_MSByte , 0x5801 ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpGInR_LSByte , 0x5806 ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpGInR_MSByte , 0x5805 ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpBInR_LSByte , 0x580a ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpBInR_MSByte , 0x5809 ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpRInG_LSByte , 0x580e ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpRInG_MSByte , 0x580d ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpGInG_LSByte , 0x5812 ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpGInG_MSByte , 0x5811 ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpBInG_LSByte , 0x5816 ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpBInG_MSByte , 0x5815 ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpRInB_LSByte , 0x581a ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpRInB_MSByte , 0x5819 ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpGInB_LSByte , 0x581e ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpGInB_MSByte , 0x581d ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpBInB_LSByte , 0x5822 ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpBInB_MSByte , 0x5821 ,0x0000}, +*/ { ColourEngine1_ColourMatrixFarSensor_fpRInR_LSByte , 0x5802, 0x0000 }, { ColourEngine1_ColourMatrixFarSensor_fpRInR_MSByte , 0x5801, 0x3f0c }, { ColourEngine1_ColourMatrixFarSensor_fpGInR_LSByte , 0x5806, 0x0000 }, { ColourEngine1_ColourMatrixFarSensor_fpGInR_MSByte , 0x5805, 0xb887 }, { ColourEngine1_ColourMatrixFarSensor_fpBInR_LSByte , 0x580a, 0x0000 }, @@ -2964,10 +4131,12 @@ struct nomadik_vpip_param vpip_default_p { ColourEngine1_ColourMatrixFarSensor_fpRInB_MSByte , 0x5819, 0xbc6e }, { ColourEngine1_ColourMatrixFarSensor_fpGInB_LSByte , 0x581e, 0x0000 }, { ColourEngine1_ColourMatrixFarSensor_fpGInB_MSByte , 0x581d, 0xc01b }, { ColourEngine1_ColourMatrixFarSensor_fpBInB_LSByte , 0x5822, 0x0000 }, { ColourEngine1_ColourMatrixFarSensor_fpBInB_MSByte , 0x5821, 0x41b7 }, +// page "ColourEngine1_ColourMatrixNearSensor" +// { ColourEngine1_ColourMatrixNearSensor_fpRInR_LSByte , 0x5882, 0x0000 }, { ColourEngine1_ColourMatrixNearSensor_fpRInR_MSByte , 0x5881, 0x0000 }, { ColourEngine1_ColourMatrixNearSensor_fpGInR_LSByte , 0x5886, 0x0000 }, { ColourEngine1_ColourMatrixNearSensor_fpGInR_MSByte , 0x5885, 0x0000 }, { ColourEngine1_ColourMatrixNearSensor_fpBInR_LSByte , 0x588a, 0x0000 }, @@ -2982,106 +4151,155 @@ struct nomadik_vpip_param vpip_default_p { ColourEngine1_ColourMatrixNearSensor_fpRInB_MSByte , 0x5899, 0x0000 }, { ColourEngine1_ColourMatrixNearSensor_fpGInB_LSByte , 0x589e, 0x0000 }, { ColourEngine1_ColourMatrixNearSensor_fpGInB_MSByte , 0x589d, 0x0000 }, { ColourEngine1_ColourMatrixNearSensor_fpBInB_LSByte , 0x58a2, 0x0000 }, { ColourEngine1_ColourMatrixNearSensor_fpBInB_MSByte , 0x58a1, 0x0000 }, + +// page "WhiteBalanceGainLimit" +// + /* + { WhiteBalanceGainLimit_fpWhiteBalanceGainLimit_LSByte , 0x5902 ,0x0000}, + { WhiteBalanceGainLimit_fpWhiteBalanceGainLimit_MSByte , 0x5901 ,0x0000}, +*/ { WhiteBalanceGainLimit_fpWhiteBalanceGainLimit_LSByte , 0x5902, 0x0000 }, { WhiteBalanceGainLimit_fpWhiteBalanceGainLimit_MSByte , 0x5901, 0x4200 }, +// page "ToshibaTechnicalParamTuner" +// +/* { ToshibaTechnicalParamTuner_uwHostLevelMacroPos_LSByte , 0x5982, 0x0000 }, { ToshibaTechnicalParamTuner_uwHostLevelMacroPos_MSByte , 0x5981, 0x0000 }, { ToshibaTechnicalParamTuner_uwHostLevelInfinityPos_LSByte , 0x5986, 0x0000 }, { ToshibaTechnicalParamTuner_uwHostLevelInfinityPos_MSByte , 0x5985, 0x0000 }, { ToshibaTechnicalParamTuner_uwDefAFMaxStandardRange_um_LSByte , 0x598a, 0x0000 }, -{ ToshibaTechnicalParamTuner_uwDefAFMaxStandardRange_um_MSByte , 0x5989, 0x012c }, + { ToshibaTechnicalParamTuner_uwDefAFMaxStandardRange_um_MSByte , 0x5989 ,0x0000}, + { ToshibaTechnicalParamTuner_bDefFineStepParam_um , 0x598c ,0x0000}, + { ToshibaTechnicalParamTuner_bDefCoarseStepParam_um , 0x598e ,0x0000}, + { ToshibaTechnicalParamTuner_fHostDefTechParam , 0x5990 ,0x0000}, + */ + + + { ToshibaTechnicalParamTuner_uwHostLevelMacroPos_LSByte , 0x5982, 0x0000 }, + { ToshibaTechnicalParamTuner_uwHostLevelMacroPos_MSByte , 0x5981, 0x0000 }, + { ToshibaTechnicalParamTuner_uwHostLevelInfinityPos_LSByte , 0x5986, 0x0000 }, + { ToshibaTechnicalParamTuner_uwHostLevelInfinityPos_MSByte , 0x5985, 0x0000 }, + { ToshibaTechnicalParamTuner_uwDefAFMaxStandardRange_um_LSByte , 0x598a, 0x0000 }, + { ToshibaTechnicalParamTuner_uwDefAFMaxStandardRange_um_MSByte , 0x5989, 0x012c }, { ToshibaTechnicalParamTuner_bDefFineStepParam_um , 0x598c, 0x0008 }, { ToshibaTechnicalParamTuner_bDefCoarseStepParam_um , 0x598e, 0x0030 }, { ToshibaTechnicalParamTuner_fHostDefTechParam , 0x5990, 0x0002 }, -{ IRPLastPreviewWOI_X_Byte0 , 0x800c, 0x0000 }, + + + + { IRPLastPreviewWOI_X_Byte0 , 0x800C ,0x0000}, { IRPLastPreviewWOI_X_Byte1 , 0x800e, 0x0000 }, { IRPLastPreviewWOI_X_Byte2 , 0x8010, 0x0000 }, { IRPLastPreviewWOI_X_Byte3 , 0x8012, 0x0000 }, -{ ModeSetupBank2_bActiveSensor , 0x3b18, 0x0002 }, + //additional defs was present earlier but not defined now + { ModeSetupBank2_bActiveSensor , 0x3b18,0x2}, //0x3718 { ModeSetupBank3_bActiveSensor , 0x3b98,0x2}, }; EXPORT_SYMBOL(vpip_default_params); struct nomadik_vpip_param vpip_default_params_orig[2700]= - - { + { DeviceParameters_uwDeviceId_LSByte , 0x0002, 0x0000 }, { DeviceParameters_uwDeviceId_MSByte , 0x0001, 0x0000 }, { DeviceParameters_bFirmwareVersionMajor , 0x0004, 0x0000 }, { DeviceParameters_bFirmwareVersionMinor , 0x0006, 0x0000 }, { DeviceParameters_bHardwareVersionMajor , 0x0008, 0x0000 }, { DeviceParameters_bHardwareVersionMinor , 0x000a, 0x0000 }, -{ ModeManagerControl_bUserCommand , 0x0080, 0x0000 }, + +// page "ModeManagerControl" +// + { ModeManagerControl_bUserCommand , 0x0080,0x0000},//to be hardcoded { ModeManagerControl_fTestStateMachine , 0x0082, 0x0000 }, { ModeManagerControl_fForceTestState , 0x0084, 0x0000 }, { ModeManagerControl_bManualNextState , 0x0086, 0x0000 }, { ModeManagerControl_bTestCoin , 0x0088, 0x0000 }, + +// page "ModeManagerStatus" [read only] +// { ModeManagerStatus_bThisLoLevelState , 0x0100, 0x0000 }, { ModeManagerStatus_bNextLoLevelState , 0x0102, 0x0000 }, { ModeManagerStatus_bHiLevelState , 0x0104, 0x0000 }, { ModeManagerStatus_bCycles , 0x0106, 0x0000 }, { ModeManagerStatus_fModeStaticSetupsChanged , 0x0108, 0x0000 }, { ModeManagerStatus_bTestCoin , 0x010a, 0x0000 }, { ModeManagerStatus_fCycleForTest , 0x010c, 0x0000 }, { ModeManagerStatus_bNumberOfFramesStreamed , 0x010e, 0x0000 }, { ModeManagerStatus_bPrevFrameCountForExposure , 0x0110, 0x0000 }, -{ RunModeControl_fMeteringOn , 0x0180, 0x0001 }, + +// page "RunModeControl" +// + { RunModeControl_fMeteringOn , 0x0180,0x1}, { RunModeControl_fExitOnStable , 0x0182, 0x0000 }, -{ RunModeControl_bStreamLength , 0x0184, 0x0000 }, + { RunModeControl_bStreamLength , 0x0184,0x00}, { RunModeControl_fMeterBeforeStreaming , 0x0186, 0x0000 }, { RunModeControl_fChkForAF_Stability , 0x0188, 0x0000 }, { RunModeControl_fChkForExposure_Stability , 0x018a, 0x0000 }, { RunModeControl_fChkForWhiteBalance_Stability , 0x018c, 0x0000 }, -{ ModeSetupBankSelector_bRequiredModeSetupBank , 0x0200, 0x0000 }, -{ PipeSetupBankSelector_bRequiredPipe0SetupBank , 0x0280, 0x0000 }, + +// page "ModeSetupBankSelector" [mode static] +// + { ModeSetupBankSelector_bRequiredModeSetupBank , 0x0200,0x00}, + +// page "PipeSetupBankSelector" [mode static] +// + { PipeSetupBankSelector_bRequiredPipe0SetupBank , 0x0280, 0x00}, + +// page "ModeSetupBank0" [mode static] +// { ModeSetupBank0_uwInputImageSize_X_LSByte , 0x0302, 0x0000 }, { ModeSetupBank0_uwInputImageSize_X_MSByte , 0x0301, 0x0648 }, { ModeSetupBank0_uwInputImageSize_Y_LSByte , 0x0306, 0x0000 }, -{ ModeSetupBank0_uwInputImageSize_Y_MSByte , 0x0305, 0x04b8 }, + { ModeSetupBank0_uwInputImageSize_Y_MSByte , 0x0305,0x04B8}, { ModeSetupBank0_uwMaxImageSize_X_LSByte , 0x030a, 0x0000 }, -{ ModeSetupBank0_uwMaxImageSize_X_MSByte , 0x0309, 0x0640 }, + { ModeSetupBank0_uwMaxImageSize_X_MSByte , 0x0309,0x640}, { ModeSetupBank0_uwMaxImageSize_Y_LSByte , 0x030e, 0x0000 }, -{ ModeSetupBank0_uwMaxImageSize_Y_MSByte , 0x030d, 0x04b0 }, + { ModeSetupBank0_uwMaxImageSize_Y_MSByte , 0x030d,0x4b0}, { ModeSetupBank0_uwMinImageSize_X_LSByte , 0x0312, 0x0000 }, -{ ModeSetupBank0_uwMinImageSize_X_MSByte , 0x0311, 0x0058 }, + { ModeSetupBank0_uwMinImageSize_X_MSByte , 0x0311,0x58}, { ModeSetupBank0_uwMinImageSize_Y_LSByte , 0x0316, 0x0000 }, -{ ModeSetupBank0_uwMinImageSize_Y_MSByte , 0x0315, 0x0048 }, -{ ModeSetupBank0_bActiveSensor , 0x0318, 0x0002 }, + { ModeSetupBank0_uwMinImageSize_Y_MSByte , 0x0315,0x48}, + { ModeSetupBank0_bActiveSensor , 0x0318,0x2},// tobe hard coded { ModeSetupBank0_fLowPowerStreaming , 0x031a, 0x0000 }, { ModeSetupBank0_bTestMode , 0x031c, 0x0000 }, -{ ModeSetupBank0_bNumberOfStatusLines , 0x031e, 0x0003 }, -{ ModeSetupBank0_bNumberOfDarkLines , 0x0320, 0x0002 }, -{ ModeSetupBank0_bNumberOfBlackLines , 0x0322, 0x0004 }, + { ModeSetupBank0_bNumberOfStatusLines , 0x031e,0x03}, + { ModeSetupBank0_bNumberOfDarkLines , 0x0320,0x02}, + { ModeSetupBank0_bNumberOfBlackLines , 0x0322,0x04}, { ModeSetupBank0_uwNumberOfInterLinePixelClocks_LSByte , 0x0326, 0x0000 }, -{ ModeSetupBank0_uwNumberOfInterLinePixelClocks_MSByte , 0x0325, 0x0011 }, + { ModeSetupBank0_uwNumberOfInterLinePixelClocks_MSByte , 0x0325, 0x11}, { ModeSetupBank0_uwNumberOfInterFrameLines_LSByte , 0x032a, 0x0000 }, { ModeSetupBank0_uwNumberOfInterFrameLines_MSByte , 0x0329, 0x0000 }, -{ ModeSetupBank0_bNumberOfDummyColumns , 0x032c, 0x0008 }, -{ ModeSetupBank0_bInputImageSource , 0x032e, 0x0000 }, -{ ModeSetupBank0_bOutputImageDestination , 0x0330, 0x0001 }, + { ModeSetupBank0_bNumberOfDummyColumns , 0x032c ,0x08}, + { ModeSetupBank0_bInputImageSource , 0x032e ,0x00}, + { ModeSetupBank0_bOutputImageDestination , 0x0330 ,0x01}, + +// page "PipeSetupBankA" [mode static] +// { PipeSetupBankA_uwPipeOutputSize_X_LSByte , 0x0382, 0x0000 }, -{ PipeSetupBankA_uwPipeOutputSize_X_MSByte , 0x0381, 0x0800 }, + { PipeSetupBankA_uwPipeOutputSize_X_MSByte , 0x0381,0x800}, { PipeSetupBankA_uwPipeOutputSize_Y_LSByte , 0x0386, 0x0000 }, -{ PipeSetupBankA_uwPipeOutputSize_Y_MSByte , 0x0385, 0x0600 }, -{ PipeSetupBankA_bPipeOutputFormat , 0x0388, 0x0003 }, -{ PipeSetupBankA_bPipeStreamLength , 0x038a, 0x0000 }, -{ PipeSetupBankA_fTogglePixValid , 0x038c, 0x0000 }, -{ PipeSetupBankA_fEnableItuEmbeddedCodes , 0x038e, 0x0000 }, -{ PipeSetupBankA_bPixValidLineTypes , 0x0390, 0x0020 }, + { PipeSetupBankA_uwPipeOutputSize_Y_MSByte , 0x0385,0x600}, + { PipeSetupBankA_bPipeOutputFormat , 0x0388,0x3}, + { PipeSetupBankA_bPipeStreamLength , 0x038a,0x0}, + { PipeSetupBankA_fTogglePixValid , 0x038c,0x0}, + { PipeSetupBankA_fEnableItuEmbeddedCodes , 0x038e,0x0}, + { PipeSetupBankA_bPixValidLineTypes , 0x0390,0x20}, { PipeSetupBankA_fGenerateVSync , 0x0392, 0x1 }, -{ PipeSetupBankA_fCb_Cr_Flip , 0x0394, 0x0000 }, -{ PipeSetupBankA_fY_CbCr_Flip , 0x0396, 0x0000 }, + { PipeSetupBankA_fCb_Cr_Flip , 0x0394,0x0}, + { PipeSetupBankA_fY_CbCr_Flip , 0x0396,0x0}, + +// page "PipeSetupBankB" [mode static] +// { PipeSetupBankB_uwPipeOutputSize_X_LSByte , 0x0402, 0x0000 }, { PipeSetupBankB_uwPipeOutputSize_X_MSByte , 0x0401, 0x0000 }, { PipeSetupBankB_uwPipeOutputSize_Y_LSByte , 0x0406, 0x0000 }, { PipeSetupBankB_uwPipeOutputSize_Y_MSByte , 0x0405, 0x0000 }, { PipeSetupBankB_bPipeOutputFormat , 0x0408, 0x0000 }, @@ -3090,26 +4308,41 @@ struct nomadik_vpip_param vpip_default_p { PipeSetupBankB_fEnableItuEmbeddedCodes , 0x040e, 0x0000 }, { PipeSetupBankB_bPixValidLineTypes , 0x0410, 0x0000 }, { PipeSetupBankB_fGenerateVSync , 0x0412, 0x0000 }, { PipeSetupBankB_fCb_Cr_Flip , 0x0414, 0x0000 }, { PipeSetupBankB_fY_CbCr_Flip , 0x0416, 0x0000 }, + +// page "HostInterfaceManagerControl" +// { HostInterfaceManagerControl_bUserCommand , 0x0480, 0x0000 }, { HostInterfaceManagerControl_fTestStateMachine , 0x0482, 0x0000 }, { HostInterfaceManagerControl_fForceTestState , 0x0484, 0x0000 }, { HostInterfaceManagerControl_bManualNextState , 0x0486, 0x0000 }, { HostInterfaceManagerControl_bTestCoin , 0x0488, 0x0000 }, { HostInterfaceManagerControl_fAutoTransitionFromRxStopped , 0x048a, 0x0000 }, -{ HostInterfaceManagerControl_fStopSensor , 0x048c, 0x0001 }, + { HostInterfaceManagerControl_fStopSensor , 0x048c,0x1}, + +// page "HostInterfaceManagerStatus" [read only] +// { HostInterfaceManagerStatus_bThisLoLevelState , 0x0500, 0x0000 }, { HostInterfaceManagerStatus_bNextLoLevelState , 0x0502, 0x0000 }, { HostInterfaceManagerStatus_bHiLevelState , 0x0504, 0x0000 }, { HostInterfaceManagerStatus_bCycles , 0x0506, 0x0000 }, { HostInterfaceManagerStatus_bTestCoin , 0x0508, 0x0000 }, { HostInterfaceManagerStatus_fCycleForTest , 0x050a, 0x0000 }, + +// page "StreamManagerStatus" [read only] +// { StreamManagerStatus_bStreamStatus , 0x0580, 0x0000 }, { StreamManagerStatus_fIsSensorRunning , 0x0582, 0x0000 }, + +// page "ClockManagerControl" +// { ClockManagerControl_fClockManagerInDebugState , 0x0600, 0x0000 }, + +// page "LocalPipe0SetupBank" [read only] +// { LocalPipe0SetupBank_uwPipeOutputSize_X_LSByte , 0x0682, 0x0000 }, { LocalPipe0SetupBank_uwPipeOutputSize_X_MSByte , 0x0681, 0x0000 }, { LocalPipe0SetupBank_uwPipeOutputSize_Y_LSByte , 0x0686, 0x0000 }, { LocalPipe0SetupBank_uwPipeOutputSize_Y_MSByte , 0x0685, 0x0000 }, { LocalPipe0SetupBank_bPipeOutputFormat , 0x0688, 0x0000 }, @@ -3118,83 +4351,119 @@ struct nomadik_vpip_param vpip_default_p { LocalPipe0SetupBank_fEnableItuEmbeddedCodes , 0x068e, 0x0000 }, { LocalPipe0SetupBank_bPixValidLineTypes , 0x0690, 0x0000 }, { LocalPipe0SetupBank_fGenerateVSync , 0x0692, 0x0000 }, { LocalPipe0SetupBank_fCb_Cr_Flip , 0x0694, 0x0000 }, { LocalPipe0SetupBank_fY_CbCr_Flip , 0x0696, 0x0000 }, + +// page "Pipe0Control" +// { Pipe0Control_bPipeControl , 0x0700, 0x0000 }, { Pipe0Control_fPipeRefreshRequired , 0x0702, 0x0000 }, { Pipe0Control_fSfxSolariseEnabled , 0x0704, 0x0000 }, { Pipe0Control_fSfxNegativeEnabled , 0x0706, 0x0000 }, { Pipe0Control_ReplaceRedChannel , 0x0708, 0x0000 }, + /*{ Pipe0Control_ReplaceGreenChannel , 0x070a ,0x0000}, + { Pipe0Control_ReplaceBlueChannel , 0x070c ,0x0000},*/ { Pipe0Control_ReplaceGreenChannel , 0x070a, 0x0001 }, { Pipe0Control_ReplaceBlueChannel , 0x070c, 0x0002 }, + { Pipe0Control_fOverrideOFCropRegisters , 0x070e, 0x0000 }, { Pipe0Control_uwHCropRising_LSByte , 0x0712, 0x0000 }, { Pipe0Control_uwHCropRising_MSByte , 0x0711, 0x0000 }, { Pipe0Control_uwHCropFalling_LSByte , 0x0716, 0x0000 }, { Pipe0Control_uwHCropFalling_MSByte , 0x0715, 0x0000 }, { Pipe0Control_uwVCropRisingCrse_LSByte , 0x071a, 0x0000 }, { Pipe0Control_uwVCropRisingCrse_MSByte , 0x0719, 0x0000 }, { Pipe0Control_uwVCropFallingCrse_LSByte , 0x071e, 0x0000 }, { Pipe0Control_uwVCropFallingCrse_MSByte , 0x071d, 0x0000 }, + +// page "Pipe0Status" [read only] +// { Pipe0Status_bPipeStatus , 0x0780, 0x0000 }, { Pipe0Status_fPipeEnablePending , 0x0782, 0x0000 }, { Pipe0Status_bNumberOfFramesStreamed , 0x0784, 0x0000 }, { Pipe0Status_fDitherEnabled , 0x0786, 0x0000 }, { Pipe0Status_fVidCompletePending , 0x0788, 0x0000 }, + +// page "HostToSensorAccessControl" +// { HostToSensorAccessControl_bRequest , 0x0800, 0x0000 }, { HostToSensorAccessControl_bCommandCoin , 0x0802, 0x0000 }, { HostToSensorAccessControl_uwSensorIndex_LSByte , 0x0806, 0x0000 }, { HostToSensorAccessControl_uwSensorIndex_MSByte , 0x0805, 0x0000 }, + +// page "HostToSensorAccessStatus" [read only] +// { HostToSensorAccessStatus_bStatusCoin , 0x0880, 0x0000 }, { HostToSensorAccessStatus_bHostToSensorAccessErrorCount , 0x0882, 0x0000 }, + +// page "HostToSensorAccessData" +// { HostToSensorAccessData_uwDataLow_LSByte , 0x0902, 0x0000 }, { HostToSensorAccessData_uwDataLow_MSByte , 0x0901, 0x0000 }, -{ HostToSensorAccessData_uwDataHigh_LSByte , 0x0906, 0x0000 }, -{ HostToSensorAccessData_uwDataHigh_MSByte , 0x0905, 0x0000 }, + { HostToSensorAccessData_uwDataHigh_LSByte , 0x0906,0x0}, + { HostToSensorAccessData_uwDataHigh_MSByte , 0x0905,0x0}, + +// page "MasterI2cControl" +// { MasterI2cControl_bSensorSerialAddress , 0x0980, 0x0000 }, { MasterI2cControl_uwClk_Sensor_Comms_mhz_LSByte , 0x0984, 0x0000 }, { MasterI2cControl_uwClk_Sensor_Comms_mhz_MSByte , 0x0983, 0x0000 }, { MasterI2cControl_uwRequiredI2cSpeed_LSByte , 0x0988, 0x0000 }, -{ MasterI2cControl_uwRequiredI2cSpeed_MSByte , 0x0987, 0x0190 }, + { MasterI2cControl_uwRequiredI2cSpeed_MSByte , 0x0987,0x190}, { MasterI2cControl_bMaximumNumberOfGrabAttempts , 0x098a, 0x0000 }, + +// page "MasterI2cStatus" [read only] +// { MasterI2cStatus_bResourceStatus , 0x0a00, 0x0000 }, { MasterI2cStatus_uwI2CClkDiv_LSByte , 0x0a04, 0x0000 }, { MasterI2cStatus_uwI2CClkDiv_MSByte , 0x0a03, 0x0000 }, { MasterI2cStatus_fTransactionError , 0x0a06, 0x0000 }, { MasterI2cStatus_bNumberOfTransactionFailures , 0x0a08, 0x0000 }, { MasterI2cStatus_bNumberOfConsecutiveGrabFailures , 0x0a0a, 0x0000 }, { MasterI2cStatus_bNumberOfForcedReleases , 0x0a0c, 0x0000 }, -{ MasterI2cStatus_bNumberOfMcuClockDeratingAttemptsInhibited , 0x0a0e, 0x0000 }, -{ VideoTimingHostInputs_VideoTimingMode , 0x0a80, 0x0001 }, -{ VideoTimingHostInputs_bSensorBitsPerSystemClock , 0x0a82, 0x0002 }, + { MasterI2cStatus_bNumberOfMcuClockDeratingAttemptsInhibited , 0x0a0e}, + +// page "VideoTimingHostInputs" [mode static] +// + { VideoTimingHostInputs_VideoTimingMode , 0x0a80,0x01}, + { VideoTimingHostInputs_bSensorBitsPerSystemClock , 0x0a82,0x02}, { VideoTimingHostInputs_uwCsiRawFormat_LSByte , 0x0a86, 0x0000 }, { VideoTimingHostInputs_uwCsiRawFormat_MSByte , 0x0a85, 0x0808 }, { VideoTimingHostInputs_fpHostRxMaxDataRate_Mbps_LSByte , 0x0a8a, 0x0000 }, { VideoTimingHostInputs_fpHostRxMaxDataRate_Mbps_MSByte , 0x0a89, 0x508a }, { VideoTimingHostInputs_VsyncPolarity , 0x0a8c, 0x0000 }, { VideoTimingHostInputs_HsyncPolarity , 0x0a8e, 0x0000 }, + +// page "VideoTimingSensorFifoControl" [mode static] +// { VideoTimingSensorFifoControl_bFiFoWaterMarkProgrammingMode , 0x0b00, 0x0000 }, { VideoTimingSensorFifoControl_uwFifoWaterMarkPixels_LSByte , 0x0b04, 0x0000 }, { VideoTimingSensorFifoControl_uwFifoWaterMarkPixels_MSByte , 0x0b03, 0x0000 }, { VideoTimingSensorFifoControl_uwFifoSizePixels_LSByte , 0x0b08, 0x0000 }, { VideoTimingSensorFifoControl_uwFifoSizePixels_MSByte , 0x0b07, 0x0000 }, + +// page "VideoTimingSensorScalingAndSubSamplingControl" [mode static] +// { VideoTimingSensorScalingAndSubSamplingControl_fpOutputClockDeratingFraction_LSByte , 0x0b82, 0x0000 }, { VideoTimingSensorScalingAndSubSamplingControl_fpOutputClockDeratingFraction_MSByte , 0x0b81, 0x0000 }, { VideoTimingSensorScalingAndSubSamplingControl_bOutputClockDeratingRoundingMode , 0x0b84, 0x0000 }, { VideoTimingSensorScalingAndSubSamplingControl_fDerateVideoTimingClockForProfileZero , 0x0b86, 0x0000 }, + +// page "VideoTimingSensorConstraints" [mode static] +// { VideoTimingSensorConstraints_uwMinimumPrePllClockDiv_LSByte , 0x0c02, 0x0000 }, { VideoTimingSensorConstraints_uwMinimumPrePllClockDiv_MSByte , 0x0c01, 0x0000 }, { VideoTimingSensorConstraints_uwMaximumPrePllClockDiv_LSByte , 0x0c06, 0x0000 }, { VideoTimingSensorConstraints_uwMaximumPrePllClockDiv_MSByte , 0x0c05, 0x0000 }, { VideoTimingSensorConstraints_fpMinimumPllInputFrequency_Mhz_LSByte , 0x0c0a, 0x0000 }, { VideoTimingSensorConstraints_fpMinimumPllInputFrequency_Mhz_MSByte , 0x0c09, 0x0000 }, { VideoTimingSensorConstraints_uwMinimumPllMultiplier_LSByte , 0x0c0e, 0x0000 }, { VideoTimingSensorConstraints_uwMinimumPllMultiplier_MSByte , 0x0c0d, 0x0000 }, { VideoTimingSensorConstraints_uwMaximumPllMultiplier_LSByte , 0x0c12, 0x0000 }, { VideoTimingSensorConstraints_uwMaximumPllMultiplier_MSByte , 0x0c11, 0x0000 }, -{ VideoTimingSensorConstraints_fpMaximumPllOutputFrequency_Mhz_LSByte , 0x0c16, 0x0190 }, + { VideoTimingSensorConstraints_fpMaximumPllOutputFrequency_Mhz_LSByte , 0x0c16,0x190}, { VideoTimingSensorConstraints_fpMaximumPllOutputFrequency_Mhz_MSByte , 0x0c15, 0x0000 }, { VideoTimingSensorConstraints_uwMinimumVTSysClockDiv_LSByte , 0x0c1a, 0x0000 }, { VideoTimingSensorConstraints_uwMinimumVTSysClockDiv_MSByte , 0x0c19, 0x0000 }, { VideoTimingSensorConstraints_uwMaximumVTSysClockDiv_LSByte , 0x0c1e, 0x0000 }, { VideoTimingSensorConstraints_uwMaximumVTSysClockDiv_MSByte , 0x0c1d, 0x0000 }, @@ -3212,17 +4481,23 @@ struct nomadik_vpip_param vpip_default_p { VideoTimingSensorConstraints_uwMaximumOPSysClockDiv_MSByte , 0x0c35, 0x0000 }, { VideoTimingSensorConstraints_fpMaximumOPSystemClockFrequency_Mhz_LSByte , 0x0c3a, 0x0000 }, { VideoTimingSensorConstraints_fpMaximumOPSystemClockFrequency_Mhz_MSByte , 0x0c39, 0x0000 }, { VideoTimingSensorConstraints_fpMaximumOPPixelClockFrequency_Mhz_LSByte , 0x0c3e, 0x0000 }, { VideoTimingSensorConstraints_fpMaximumOPPixelClockFrequency_Mhz_MSByte , 0x0c3d, 0x0000 }, + +// page "SensorScalingSubSamplingCapabilities" [mode static] +// { SensorScalingSubSamplingCapabilities_bSensorScalingMode , 0x0c80, 0x0000 }, { SensorScalingSubSamplingCapabilities_uwScalerMMin_LSByte , 0x0c84, 0x0000 }, { SensorScalingSubSamplingCapabilities_uwScalerMMin_MSByte , 0x0c83, 0x0000 }, { SensorScalingSubSamplingCapabilities_uwScalerMMax_LSByte , 0x0c88, 0x0000 }, { SensorScalingSubSamplingCapabilities_uwScalerMMax_MSByte , 0x0c87, 0x0000 }, { SensorScalingSubSamplingCapabilities_uwMaxOddInc_LSByte , 0x0c8c, 0x0000 }, { SensorScalingSubSamplingCapabilities_uwMaxOddInc_MSByte , 0x0c8b, 0x0000 }, + +// page "VideoTimingOutput" +// { VideoTimingOutput_uwPrePllClockDiv_LSByte , 0x0d02, 0x0000 }, { VideoTimingOutput_uwPrePllClockDiv_MSByte , 0x0d01, 0x0000 }, { VideoTimingOutput_fpPllInputFrequency_Mhz_LSByte , 0x0d06, 0x0000 }, { VideoTimingOutput_fpPllInputFrequency_Mhz_MSByte , 0x0d05, 0x0000 }, { VideoTimingOutput_uwPllMultiplier_LSByte , 0x0d0a, 0x0000 }, @@ -3247,24 +4522,36 @@ struct nomadik_vpip_param vpip_default_p { VideoTimingOutput_uwOPPixelClockDiv_MSByte , 0x0d2d, 0x0000 }, { VideoTimingOutput_fpOPPixelClockFrequency_Mhz_LSByte , 0x0d32, 0x0000 }, { VideoTimingOutput_fpOPPixelClockFrequency_Mhz_MSByte , 0x0d31, 0x0000 }, { VideoTimingOutput_fpOutputTimingClockDerating_LSByte , 0x0d36, 0x0000 }, { VideoTimingOutput_fpOutputTimingClockDerating_MSByte , 0x0d35, 0x0000 }, + +// page "DummyPage5" + { DummyPage5_bDummyPageElement , 0x0d80, 0x0000 }, + +// page "VideoTimingInputsFarSensor" [mode static] + { VideoTimingInputsFarSensor_VideoTimingMode , 0x0e00, 0x0001 }, { VideoTimingInputsFarSensor_bSensorBitsPerSystemClock , 0x0e02, 0x0002 }, { VideoTimingInputsFarSensor_uwCsiRawFormat_LSByte , 0x0e06, 0x0000 }, { VideoTimingInputsFarSensor_uwCsiRawFormat_MSByte , 0x0e05, 0x0808 }, { VideoTimingInputsFarSensor_fpHostRxMaxDataRate_Mbps_LSByte , 0x0e0a, 0x0000 }, { VideoTimingInputsFarSensor_fpHostRxMaxDataRate_Mbps_MSByte , 0x0e09, 0x508a }, { VideoTimingInputsFarSensor_VsyncPolarity , 0x0e0c, 0x0000 }, { VideoTimingInputsFarSensor_HsyncPolarity , 0x0e0e, 0x0000 }, + +// page "SensorFarVideoTimingSensorFifoControl" [mode static] +// { SensorFarVideoTimingSensorFifoControl_bFiFoWaterMarkProgrammingMode , 0x0e80, 0x0000 }, { SensorFarVideoTimingSensorFifoControl_uwFifoWaterMarkPixels_LSByte , 0x0e84, 0x0000 }, { SensorFarVideoTimingSensorFifoControl_uwFifoWaterMarkPixels_MSByte , 0x0e83, 0x0000 }, { SensorFarVideoTimingSensorFifoControl_uwFifoSizePixels_LSByte , 0x0e88, 0x0000 }, { SensorFarVideoTimingSensorFifoControl_uwFifoSizePixels_MSByte , 0x0e87, 0x0000 }, + +// page "VideoTimingFarSensorConstraints" [mode static] +// { VideoTimingFarSensorConstraints_uwMinimumPrePllClockDiv_LSByte , 0x0f02, 0x0000 }, { VideoTimingFarSensorConstraints_uwMinimumPrePllClockDiv_MSByte , 0x0f01, 0x0000 }, { VideoTimingFarSensorConstraints_uwMaximumPrePllClockDiv_LSByte , 0x0f06, 0x0000 }, { VideoTimingFarSensorConstraints_uwMaximumPrePllClockDiv_MSByte , 0x0f05, 0x0000 }, { VideoTimingFarSensorConstraints_fpMinimumPllInputFrequency_Mhz_LSByte , 0x0f0a, 0x0000 }, @@ -3293,17 +4580,23 @@ struct nomadik_vpip_param vpip_default_p { VideoTimingFarSensorConstraints_uwMaximumOPSysClockDiv_MSByte , 0x0f35, 0x0000 }, { VideoTimingFarSensorConstraints_fpMaximumOPSystemClockFrequency_Mhz_LSByte , 0x0f3a, 0x0000 }, { VideoTimingFarSensorConstraints_fpMaximumOPSystemClockFrequency_Mhz_MSByte , 0x0f39, 0x0000 }, { VideoTimingFarSensorConstraints_fpMaximumOPPixelClockFrequency_Mhz_LSByte , 0x0f3e, 0x0000 }, { VideoTimingFarSensorConstraints_fpMaximumOPPixelClockFrequency_Mhz_MSByte , 0x0f3d, 0x0000 }, + +// page "SensorFarScalingSubSamplingCapabilities" [mode static] +// { SensorFarScalingSubSamplingCapabilities_bSensorScalingMode , 0x0f80, 0x0000 }, { SensorFarScalingSubSamplingCapabilities_uwScalerMMin_LSByte , 0x0f84, 0x0000 }, { SensorFarScalingSubSamplingCapabilities_uwScalerMMin_MSByte , 0x0f83, 0x0000 }, { SensorFarScalingSubSamplingCapabilities_uwScalerMMax_LSByte , 0x0f88, 0x0000 }, { SensorFarScalingSubSamplingCapabilities_uwScalerMMax_MSByte , 0x0f87, 0x0000 }, { SensorFarScalingSubSamplingCapabilities_uwMaxOddInc_LSByte , 0x0f8c, 0x0000 }, { SensorFarScalingSubSamplingCapabilities_uwMaxOddInc_MSByte , 0x0f8b, 0x0000 }, + +// page "VideoTimingFarOutput" +// { VideoTimingFarOutput_uwPrePllClockDiv_LSByte , 0x1002, 0x0000 }, { VideoTimingFarOutput_uwPrePllClockDiv_MSByte , 0x1001, 0x0000 }, { VideoTimingFarOutput_fpPllInputFrequency_Mhz_LSByte , 0x1006, 0x0000 }, { VideoTimingFarOutput_fpPllInputFrequency_Mhz_MSByte , 0x1005, 0x0000 }, { VideoTimingFarOutput_uwPllMultiplier_LSByte , 0x100a, 0x0000 }, @@ -3328,24 +4621,36 @@ struct nomadik_vpip_param vpip_default_p { VideoTimingFarOutput_uwOPPixelClockDiv_MSByte , 0x102d, 0x0000 }, { VideoTimingFarOutput_fpOPPixelClockFrequency_Mhz_LSByte , 0x1032, 0x0000 }, { VideoTimingFarOutput_fpOPPixelClockFrequency_Mhz_MSByte , 0x1031, 0x0000 }, { VideoTimingFarOutput_fpOutputTimingClockDerating_LSByte , 0x1036, 0x0000 }, { VideoTimingFarOutput_fpOutputTimingClockDerating_MSByte , 0x1035, 0x0000 }, + +// page "DummyPage6" +// { DummyPage6_bDummyPageElement , 0x1080, 0x0000 }, + +// page "VideoTimingInputsNearSensor" [mode static] +// { VideoTimingInputsNearSensor_VideoTimingMode , 0x1100, 0x0001 }, { VideoTimingInputsNearSensor_bSensorBitsPerSystemClock , 0x1102, 0x0002 }, { VideoTimingInputsNearSensor_uwCsiRawFormat_LSByte , 0x1106, 0x0000 }, { VideoTimingInputsNearSensor_uwCsiRawFormat_MSByte , 0x1105, 0x0808 }, { VideoTimingInputsNearSensor_fpHostRxMaxDataRate_Mbps_LSByte , 0x110a, 0x0000 }, { VideoTimingInputsNearSensor_fpHostRxMaxDataRate_Mbps_MSByte , 0x1109, 0x508a }, { VideoTimingInputsNearSensor_VsyncPolarity , 0x110c, 0x0000 }, { VideoTimingInputsNearSensor_HsyncPolarity , 0x110e, 0x0000 }, + +// page "SensorNearVideoTimingSensorFifoControl" [mode static] +// { SensorNearVideoTimingSensorFifoControl_bFiFoWaterMarkProgrammingMode , 0x1180, 0x0000 }, { SensorNearVideoTimingSensorFifoControl_uwFifoWaterMarkPixels_LSByte , 0x1184, 0x0000 }, { SensorNearVideoTimingSensorFifoControl_uwFifoWaterMarkPixels_MSByte , 0x1183, 0x0000 }, { SensorNearVideoTimingSensorFifoControl_uwFifoSizePixels_LSByte , 0x1188, 0x0000 }, { SensorNearVideoTimingSensorFifoControl_uwFifoSizePixels_MSByte , 0x1187, 0x0000 }, + +// page "VideoTimingNearSensorConstraints" [mode static] +// { VideoTimingNearSensorConstraints_uwMinimumPrePllClockDiv_LSByte , 0x1202, 0x0000 }, { VideoTimingNearSensorConstraints_uwMinimumPrePllClockDiv_MSByte , 0x1201, 0x0000 }, { VideoTimingNearSensorConstraints_uwMaximumPrePllClockDiv_LSByte , 0x1206, 0x0000 }, { VideoTimingNearSensorConstraints_uwMaximumPrePllClockDiv_MSByte , 0x1205, 0x0000 }, { VideoTimingNearSensorConstraints_fpMinimumPllInputFrequency_Mhz_LSByte , 0x120a, 0x0000 }, @@ -3374,17 +4679,23 @@ struct nomadik_vpip_param vpip_default_p { VideoTimingNearSensorConstraints_uwMaximumOPSysClockDiv_MSByte , 0x1235, 0x0000 }, { VideoTimingNearSensorConstraints_fpMaximumOPSystemClockFrequency_Mhz_LSByte , 0x123a, 0x0000 }, { VideoTimingNearSensorConstraints_fpMaximumOPSystemClockFrequency_Mhz_MSByte , 0x1239, 0x0000 }, { VideoTimingNearSensorConstraints_fpMaximumOPPixelClockFrequency_Mhz_LSByte , 0x123e, 0x0000 }, { VideoTimingNearSensorConstraints_fpMaximumOPPixelClockFrequency_Mhz_MSByte , 0x123d, 0x0000 }, + +// page "SensorNearScalingSubSamplingCapabilities" [mode static] +// { SensorNearScalingSubSamplingCapabilities_bSensorScalingMode , 0x1280, 0x0000 }, { SensorNearScalingSubSamplingCapabilities_uwScalerMMin_LSByte , 0x1284, 0x0000 }, { SensorNearScalingSubSamplingCapabilities_uwScalerMMin_MSByte , 0x1283, 0x0000 }, { SensorNearScalingSubSamplingCapabilities_uwScalerMMax_LSByte , 0x1288, 0x0000 }, { SensorNearScalingSubSamplingCapabilities_uwScalerMMax_MSByte , 0x1287, 0x0000 }, { SensorNearScalingSubSamplingCapabilities_uwMaxOddInc_LSByte , 0x128c, 0x0000 }, { SensorNearScalingSubSamplingCapabilities_uwMaxOddInc_MSByte , 0x128b, 0x0000 }, + +// page "VideoTimingNearOutput" +// { VideoTimingNearOutput_uwPrePllClockDiv_LSByte , 0x1302, 0x0000 }, { VideoTimingNearOutput_uwPrePllClockDiv_MSByte , 0x1301, 0x0000 }, { VideoTimingNearOutput_fpPllInputFrequency_Mhz_LSByte , 0x1306, 0x0000 }, { VideoTimingNearOutput_fpPllInputFrequency_Mhz_MSByte , 0x1305, 0x0000 }, { VideoTimingNearOutput_uwPllMultiplier_LSByte , 0x130a, 0x0000 }, @@ -3409,39 +4720,51 @@ struct nomadik_vpip_param vpip_default_p { VideoTimingNearOutput_uwOPPixelClockDiv_MSByte , 0x132d, 0x0000 }, { VideoTimingNearOutput_fpOPPixelClockFrequency_Mhz_LSByte , 0x1332, 0x0000 }, { VideoTimingNearOutput_fpOPPixelClockFrequency_Mhz_MSByte , 0x1331, 0x0000 }, { VideoTimingNearOutput_fpOutputTimingClockDerating_LSByte , 0x1336, 0x0000 }, { VideoTimingNearOutput_fpOutputTimingClockDerating_MSByte , 0x1335, 0x0000 }, + +// page "DummyPage7" +// { DummyPage7_bDummyPageElement , 0x1380, 0x0000 }, + +// page "SystemConfiguration" +// { SystemConfiguration_fFarSensorPresent , 0x1400, 0x0001 }, -{ SystemConfiguration_CcpRxForFarSensor , 0x1402, 0x0000 }, -{ SystemConfiguration_fNearSensorPresent , 0x1404, 0x0001 }, -{ SystemConfiguration_CcpRxForNearSensor , 0x1406, 0x0001 }, + { SystemConfiguration_CcpRxForFarSensor , 0x1402 ,0x00}, + { SystemConfiguration_fNearSensorPresent , 0x1404 ,0x01}, + { SystemConfiguration_CcpRxForNearSensor , 0x1406 ,0x01}, { SystemConfiguration_uwExternalClockFrequency_Mhz_num_LSByte , 0x140a, 0x0000 }, -{ SystemConfiguration_uwExternalClockFrequency_Mhz_num_MSByte , 0x1409, 0x0060 }, -{ SystemConfiguration_bExternalClockFrequency_Mhz_den , 0x140c, 0x0005 }, -{ SystemConfiguration_fFocusLensActuatorOnSensorNearPresent , 0x140e, 0x1 },//0x0000 },for auto focus -{ SystemConfiguration_fFocusLensActuatorOnSensorFarPresent , 0x1410, 0x1 },//0x0000 }, + { SystemConfiguration_uwExternalClockFrequency_Mhz_num_MSByte , 0x1409 ,0x60}, + { SystemConfiguration_bExternalClockFrequency_Mhz_den , 0x140c ,0x05}, + { SystemConfiguration_fFocusLensActuatorOnSensorNearPresent , 0x140e ,0x1}, + { SystemConfiguration_fFocusLensActuatorOnSensorFarPresent , 0x1410 ,0x1}, { SystemConfiguration_fShutterActuatorOnSensorNearPresent , 0x1412, 0x0000 }, { SystemConfiguration_fShutterActuatorOnSensorFarPresent , 0x1414, 0x0000 }, { SystemConfiguration_fpMcuClkFrequency_MHz_LSByte , 0x1418, 0x0000 }, { SystemConfiguration_fpMcuClkFrequency_MHz_MSByte , 0x1417, 0x0000 }, + +// page "SensorInformation" [read only] +// { SensorInformation_fFarSensorAvailable , 0x1480, 0x0000 }, { SensorInformation_uwFarSensorModelId_LSByte , 0x1484, 0x0000 }, { SensorInformation_uwFarSensorModelId_MSByte , 0x1483, 0x0000 }, { SensorInformation_bFarSensorRevision , 0x1486, 0x0000 }, { SensorInformation_bFarSensorManufacturerId , 0x1488, 0x0000 }, { SensorInformation_bFarSensorSMIAVersion , 0x148a, 0x0000 }, -{ SensorInformation_fNearSensorAvailable , 0x148c, 0x0000 }, + { SensorInformation_fNearSensorAvailable , 0x148c ,0x0000}, //0x108c { SensorInformation_uwNearSensorModelId_LSByte , 0x1490, 0x0000 }, { SensorInformation_uwNearSensorModelId_MSByte , 0x148f, 0x0000 }, { SensorInformation_bNearSensorRevision , 0x1492, 0x0000 }, { SensorInformation_bNearSensorManufacturerId , 0x1494, 0x0000 }, { SensorInformation_bNearSensorSMIAVersion , 0x1496, 0x0000 }, -{ SensorInformation_bCurrentlyActiveSensor , 0x1498, 0x0000 }, + { SensorInformation_bCurrentlyActiveSensor , 0x1498 ,0x0000}, //0x1098 { SensorInformation_fCurrentSensorAvailable , 0x149a, 0x0000 }, { SensorInformation_fSensorChangedSinceLastStreaming , 0x149c, 0x0000 }, + +// page "SensorCapabilitiesFarSensor" +// { SensorCapabilitiesFarSensor_uwSensorIntegrationTimeCapability_LSByte , 0x1502, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorIntegrationTimeCapability_MSByte , 0x1501, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorMinimumCoarseIntegrationLines_LSByte , 0x1506, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorMinimumCoarseIntegrationLines_MSByte , 0x1505, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorCoarseIntegrationTimeMaxMargin_LSByte , 0x150a, 0x0000 }, @@ -3449,12 +4772,14 @@ struct nomadik_vpip_param vpip_default_p { SensorCapabilitiesFarSensor_uwSensorMinimumFineIntegrationPixels_LSByte , 0x150e, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorMinimumFineIntegrationPixels_MSByte , 0x150d, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorFineIntegrationTimeMaxMargin_LSByte , 0x1512, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorFineIntegrationTimeMaxMargin_MSByte , 0x1511, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorAnalogGainMinimum_LSByte , 0x1516, 0x0000 }, + /*{ SensorCapabilitiesFarSensor_uwSensorAnalogGainMinimum_MSByte , 0x1515 ,0x0000},*/ { SensorCapabilitiesFarSensor_uwSensorAnalogGainMinimum_MSByte , 0x1515, 0x0020 }, { SensorCapabilitiesFarSensor_uwSensorAnalogGainMaximum_LSByte , 0x151a, 0x0000 }, + /*{ SensorCapabilitiesFarSensor_uwSensorAnalogGainMaximum_MSByte , 0x1519 ,0x00f0},*/ { SensorCapabilitiesFarSensor_uwSensorAnalogGainMaximum_MSByte , 0x1519, 0x0080 }, { SensorCapabilitiesFarSensor_uwSensorAnalogGainCodeStep_LSByte , 0x151e, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorAnalogGainCodeStep_MSByte , 0x151d, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorAnalogGainType_LSByte , 0x1522, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorAnalogGainType_MSByte , 0x1521, 0x0000 }, @@ -3484,11 +4809,15 @@ struct nomadik_vpip_param vpip_default_p { SensorCapabilitiesFarSensor_uwSensorDigitalGainCapability_LSByte , 0x1554, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorDigitalGainCapability_MSByte , 0x1553, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorDigitalGainMinimum_LSByte , 0x1558, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorDigitalGainMinimum_MSByte , 0x1557, 0x0000 }, { SensorCapabilitiesFarSensor_uwSensorDataPedestal_LSByte , 0x155c, 0x0000 }, + /* { SensorCapabilitiesFarSensor_uwSensorDataPedestal_MSByte , 0x155b ,0x0000},*/ { SensorCapabilitiesFarSensor_uwSensorDataPedestal_MSByte , 0x155b, 0x0040 }, + +// page "SensorCapabilitiesNearSensor" +// { SensorCapabilitiesNearSensor_uwSensorIntegrationTimeCapability_LSByte , 0x1582, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorIntegrationTimeCapability_MSByte , 0x1581, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorMinimumCoarseIntegrationLines_LSByte , 0x1586, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorMinimumCoarseIntegrationLines_MSByte , 0x1585, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorCoarseIntegrationTimeMaxMargin_LSByte , 0x158a, 0x0000 }, @@ -3497,12 +4826,12 @@ struct nomadik_vpip_param vpip_default_p { SensorCapabilitiesNearSensor_uwSensorMinimumFineIntegrationPixels_MSByte , 0x158d, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorFineIntegrationTimeMaxMargin_LSByte , 0x1592, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorFineIntegrationTimeMaxMargin_MSByte , 0x1591, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorAnalogGainMinimum_LSByte , 0x1596, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorAnalogGainMinimum_MSByte , 0x1595, 0x0000 }, -{ SensorCapabilitiesNearSensor_uwSensorAnalogGainMaximum_LSByte , 0x159a, 0x0000 }, -{ SensorCapabilitiesNearSensor_uwSensorAnalogGainMaximum_MSByte , 0x1599, 0x00f0 }, + { SensorCapabilitiesNearSensor_uwSensorAnalogGainMaximum_LSByte , 0x159a ,0x00}, + { SensorCapabilitiesNearSensor_uwSensorAnalogGainMaximum_MSByte , 0x1599 ,0xf0}, { SensorCapabilitiesNearSensor_uwSensorAnalogGainCodeStep_LSByte , 0x159e, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorAnalogGainCodeStep_MSByte , 0x159d, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorAnalogGainType_LSByte , 0x15a2, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorAnalogGainType_MSByte , 0x15a1, 0x0000 }, { SensorCapabilitiesNearSensor_fpSensorAnalogGainConstM0_LSByte , 0x15a6, 0x0000 }, @@ -3532,10 +4861,13 @@ struct nomadik_vpip_param vpip_default_p { SensorCapabilitiesNearSensor_uwSensorDigitalGainCapability_MSByte , 0x15d3, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorDigitalGainMinimum_LSByte , 0x15d8, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorDigitalGainMinimum_MSByte , 0x15d7, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorDataPedestal_LSByte , 0x15dc, 0x0000 }, { SensorCapabilitiesNearSensor_uwSensorDataPedestal_MSByte , 0x15db, 0x0000 }, + +// page "SensorCapabilitiesCurrentSensor" +// { SensorCapabilitiesCurrentSensor_uwSensorIntegrationTimeCapability_LSByte , 0x1602, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorIntegrationTimeCapability_MSByte , 0x1601, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorMinimumCoarseIntegrationLines_LSByte , 0x1606, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorMinimumCoarseIntegrationLines_MSByte , 0x1605, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorCoarseIntegrationTimeMaxMargin_LSByte , 0x160a, 0x0000 }, @@ -3543,12 +4875,14 @@ struct nomadik_vpip_param vpip_default_p { SensorCapabilitiesCurrentSensor_uwSensorMinimumFineIntegrationPixels_LSByte , 0x160e, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorMinimumFineIntegrationPixels_MSByte , 0x160d, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorFineIntegrationTimeMaxMargin_LSByte , 0x1612, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorFineIntegrationTimeMaxMargin_MSByte , 0x1611, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorAnalogGainMinimum_LSByte , 0x1616, 0x0000 }, + /*{ SensorCapabilitiesCurrentSensor_uwSensorAnalogGainMinimum_MSByte , 0x1615 ,0x0000},*/ { SensorCapabilitiesCurrentSensor_uwSensorAnalogGainMinimum_MSByte , 0x1615, 0x0020 }, { SensorCapabilitiesCurrentSensor_uwSensorAnalogGainMaximum_LSByte , 0x161a, 0x0000 }, + /*{ SensorCapabilitiesCurrentSensor_uwSensorAnalogGainMaximum_MSByte , 0x1619 ,0x0000},*/ { SensorCapabilitiesCurrentSensor_uwSensorAnalogGainMaximum_MSByte , 0x1619, 0x0080 }, { SensorCapabilitiesCurrentSensor_uwSensorAnalogGainCodeStep_LSByte , 0x161e, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorAnalogGainCodeStep_MSByte , 0x161d, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorAnalogGainType_LSByte , 0x1622, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorAnalogGainType_MSByte , 0x1621, 0x0000 }, @@ -3579,10 +4913,13 @@ struct nomadik_vpip_param vpip_default_p { SensorCapabilitiesCurrentSensor_uwSensorDigitalGainCapability_MSByte , 0x1653, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorDigitalGainMinimum_LSByte , 0x1658, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorDigitalGainMinimum_MSByte , 0x1657, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorDataPedestal_LSByte , 0x165c, 0x0000 }, { SensorCapabilitiesCurrentSensor_uwSensorDataPedestal_MSByte , 0x165b, 0x0000 }, + +// page "SensorFrameConstraintsFar" [mode static] +// { SensorFrameConstraintsFar_uwVTXAddrMin_LSByte , 0x1682, 0x0000 }, { SensorFrameConstraintsFar_uwVTXAddrMin_MSByte , 0x1681, 0x0000 }, { SensorFrameConstraintsFar_uwVTYAddrMin_LSByte , 0x1686, 0x0000 }, { SensorFrameConstraintsFar_uwVTYAddrMin_MSByte , 0x1685, 0x0000 }, { SensorFrameConstraintsFar_uwVTXAddrMax_LSByte , 0x168a, 0x0000 }, @@ -3607,10 +4944,13 @@ struct nomadik_vpip_param vpip_default_p { SensorFrameConstraintsFar_uwMaxVTLineLengthPck_MSByte , 0x16ad, 0x0000 }, { SensorFrameConstraintsFar_uwMinVTLineBlankingPck_LSByte , 0x16b2, 0x0000 }, { SensorFrameConstraintsFar_uwMinVTLineBlankingPck_MSByte , 0x16b1, 0x0000 }, { SensorFrameConstraintsFar_uwMinVTFrameBlanking_LSByte , 0x16b6, 0x0000 }, { SensorFrameConstraintsFar_uwMinVTFrameBlanking_MSByte , 0x16b5, 0x0000 }, + +// page "SensorFrameConstraintsNear" [mode static] +// { SensorFrameConstraintsNear_uwVTXAddrMin_LSByte , 0x1702, 0x0000 }, { SensorFrameConstraintsNear_uwVTXAddrMin_MSByte , 0x1701, 0x0000 }, { SensorFrameConstraintsNear_uwVTYAddrMin_LSByte , 0x1706, 0x0000 }, { SensorFrameConstraintsNear_uwVTYAddrMin_MSByte , 0x1705, 0x0000 }, { SensorFrameConstraintsNear_uwVTXAddrMax_LSByte , 0x170a, 0x0000 }, @@ -3635,12 +4975,18 @@ struct nomadik_vpip_param vpip_default_p { SensorFrameConstraintsNear_uwMaxVTLineLengthPck_MSByte , 0x172d, 0x0000 }, { SensorFrameConstraintsNear_uwMinVTLineBlankingPck_LSByte , 0x1732, 0x0000 }, { SensorFrameConstraintsNear_uwMinVTLineBlankingPck_MSByte , 0x1731, 0x0000 }, { SensorFrameConstraintsNear_uwMinVTFrameBlanking_LSByte , 0x1736, 0x0000 }, { SensorFrameConstraintsNear_uwMinVTFrameBlanking_MSByte , 0x1735, 0x0000 }, -{ AntiFlickerExposureControls_bMainsFrequency_Hz , 0x1780, 0x0032 }, -{ AntiFlickerExposureControls_fGuaranteeStaticFlickerFrameLength , 0x1782, 0x0000 }, + +// page "AntiFlickerExposureControls" +// + { AntiFlickerExposureControls_bMainsFrequency_Hz , 0x1780 ,0x32}, + { AntiFlickerExposureControls_fGuaranteeStaticFlickerFrameLength , 0x1782,0x00},//0 for 3mp, 1 for 2mp + +// page "CurrentFrameDimension" [read only] +// { CurrentFrameDimension_uwVTFrameLengthLines_LSByte , 0x1802, 0x0000 }, { CurrentFrameDimension_uwVTFrameLengthLines_MSByte , 0x1801, 0x0000 }, { CurrentFrameDimension_uwVTLineLengthPck_LSByte , 0x1806, 0x0000 }, { CurrentFrameDimension_uwVTLineLengthPck_MSByte , 0x1805, 0x0000 }, { CurrentFrameDimension_uwVTXAddrStart_LSByte , 0x180a, 0x0000 }, @@ -3668,10 +5014,13 @@ struct nomadik_vpip_param vpip_default_p { CurrentFrameDimension_bScalingMode , 0x1834, 0x0000 }, { CurrentFrameDimension_fpScaleFactor_LSByte , 0x1838, 0x0000 }, { CurrentFrameDimension_fpScaleFactor_MSByte , 0x1837, 0x0000 }, { CurrentFrameDimension_uwScalerM_LSByte , 0x183c, 0x0000 }, { CurrentFrameDimension_uwScalerM_MSByte , 0x183b, 0x0000 }, + +// page "SensorFrameConstraints" [read only] +// { SensorFrameConstraints_uwVTXAddrMin_LSByte , 0x1882, 0x0000 }, { SensorFrameConstraints_uwVTXAddrMin_MSByte , 0x1881, 0x0000 }, { SensorFrameConstraints_uwVTYAddrMin_LSByte , 0x1886, 0x0000 }, { SensorFrameConstraints_uwVTYAddrMin_MSByte , 0x1885, 0x0000 }, { SensorFrameConstraints_uwVTXAddrMax_LSByte , 0x188a, 0x0000 }, @@ -3696,16 +5045,22 @@ struct nomadik_vpip_param vpip_default_p { SensorFrameConstraints_uwMaxVTLineLengthPck_MSByte , 0x18ad, 0x0000 }, { SensorFrameConstraints_uwMinVTLineBlankingPck_LSByte , 0x18b2, 0x0000 }, { SensorFrameConstraints_uwMinVTLineBlankingPck_MSByte , 0x18b1, 0x0000 }, { SensorFrameConstraints_uwMinVTFrameBlanking_LSByte , 0x18b6, 0x0000 }, { SensorFrameConstraints_uwMinVTFrameBlanking_MSByte , 0x18b5, 0x0000 }, + +// page "HostFrameConstraints" +// { HostFrameConstraints_uwMinimumOPLineBlanking_pixels_LSByte , 0x1902, 0x0000 }, { HostFrameConstraints_uwMinimumOPLineBlanking_pixels_MSByte , 0x1901, 0x0000 }, { HostFrameConstraints_uwMinimumOPFrameBlanking_lines_LSByte , 0x1906, 0x0000 }, { HostFrameConstraints_uwMinimumOPFrameBlanking_lines_MSByte , 0x1905, 0x0000 }, { HostFrameConstraints_bMinimumPostScalar0LineBlanking_pixels , 0x1908, 0x0000 }, { HostFrameConstraints_bMinimumPostScalar1LineBlanking_pixels , 0x190a, 0x0000 }, + +// page "FrameDimensionStatus" [read only] +// { FrameDimensionStatus_fFrameLengthChangePending , 0x1980, 0x0000 }, { FrameDimensionStatus_fFrameDimensionChangePending , 0x1982, 0x0000 }, { FrameDimensionStatus_uwVTFrameLengthPending_lines_LSByte , 0x1986, 0x0000 }, { FrameDimensionStatus_uwVTFrameLengthPending_lines_MSByte , 0x1985, 0x0000 }, { FrameDimensionStatus_fFrameLengthChangeInhibitedForCoarseExposure , 0x1988, 0x0000 }, @@ -3724,53 +5079,97 @@ struct nomadik_vpip_param vpip_default_p { FrameDimensionStatus_uwMaximumSensorFOVY_LSByte , 0x19a4, 0x0000 }, { FrameDimensionStatus_uwMaximumSensorFOVY_MSByte , 0x19a3, 0x0000 }, { FrameDimensionStatus_uwOPXOutputSize_LSByte , 0x19a8, 0x0000 }, { FrameDimensionStatus_uwOPXOutputSize_MSByte , 0x19a7, 0x0000 }, { FrameDimensionStatus_fSensorPreScaleFactorChanged , 0x19aa, 0x0000 }, + +// page "BinningControl" [mode static] +// { BinningControl_fEnableBinning , 0x1a00, 0x0000 }, + +// page "BinningStatus" [read only] +// { BinningStatus_fBinningEnabled , 0x1a80, 0x0000 }, + +// page "Sensor0BinningInputs" +// { Sensor0BinningInputs_uwMinVTLineLengthPck_LSByte , 0x1b02, 0x0000 }, { Sensor0BinningInputs_uwMinVTLineLengthPck_MSByte , 0x1b01, 0x0000 }, { Sensor0BinningInputs_uwSensorMinimumFineIntegrationPixels_LSByte , 0x1b06, 0x0000 }, { Sensor0BinningInputs_uwSensorMinimumFineIntegrationPixels_MSByte , 0x1b05, 0x0000 }, + +// page "Sensor1BinningInputs" +// { Sensor1BinningInputs_uwMinVTLineLengthPck_LSByte , 0x1b82, 0x0000 }, { Sensor1BinningInputs_uwMinVTLineLengthPck_MSByte , 0x1b81, 0x0000 }, { Sensor1BinningInputs_uwSensorMinimumFineIntegrationPixels_LSByte , 0x1b86, 0x0000 }, { Sensor1BinningInputs_uwSensorMinimumFineIntegrationPixels_MSByte , 0x1b85, 0x0000 }, + +// page "CurrentSensorBinningInputs" +// { CurrentSensorBinningInputs_uwMinVTLineLengthPck_LSByte , 0x1c02, 0x0000 }, { CurrentSensorBinningInputs_uwMinVTLineLengthPck_MSByte , 0x1c01, 0x0000 }, { CurrentSensorBinningInputs_uwSensorMinimumFineIntegrationPixels_LSByte , 0x1c06, 0x0000 }, { CurrentSensorBinningInputs_uwSensorMinimumFineIntegrationPixels_MSByte , 0x1c05, 0x0000 }, + +// page "FlashManagerControl" +// + /* + { FlashManagerControl_bMode , 0x1c80 ,0x0}, + { FlashManagerControl_bFlashType , 0x1c82 ,0x0}, + { FlashManagerControl_fOrMainAndPreFlashPulse , 0x1c84 ,0x0000}, + { FlashManagerControl_RefPointCalcMode , 0x1c86 ,0x0000}, + { FlashManagerControl_wIntegrationStartPosition_LSByte , 0x1c8a ,0x0000}, + { FlashManagerControl_wIntegrationStartPosition_MSByte , 0x1c89 ,0x0000}, + { FlashManagerControl_fOverrideIntegrationStartPosition , 0x1c8c ,0x0000}, + { FlashManagerControl_fpFlashFiringDelay_us_LSByte , 0x1c90 ,0x0000}, + { FlashManagerControl_fpFlashFiringDelay_us_MSByte , 0x1c8f ,0x0000}, + { FlashManagerControl_bNumberOfPreFlashes , 0x1c92 ,0x0000}, + { FlashManagerControl_fpPulseWidthMainFlash_us_LSByte , 0x1c96 ,0x0000}, + { FlashManagerControl_fpPulseWidthMainFlash_us_MSByte , 0x1c95 ,0x0000}, + { FlashManagerControl_fpPulseWidthPreFlash_us_LSByte , 0x1c9a ,0x0000}, + { FlashManagerControl_fpPulseWidthPreFlash_us_MSByte , 0x1c99 ,0x0000}, + { FlashManagerControl_fpTimeBetweenTwoPreFlashes_us_LSByte , 0x1c9e ,0x0000}, + { FlashManagerControl_fpTimeBetweenTwoPreFlashes_us_MSByte , 0x1c9d ,0x0000}, + { FlashManagerControl_fpTimeBetweenPreFlashAndMainFlash_us_LSByte , 0x1ca2 ,0x0000}, + { FlashManagerControl_fpTimeBetweenPreFlashAndMainFlash_us_MSByte , 0x1ca1 ,0x0000}, + { FlashManagerControl_cMainFlashStartFrame , 0x1ca4 ,0x0000}, + */ { FlashManagerControl_bMode , 0x1c80, 0x0000 }, { FlashManagerControl_bFlashType , 0x1c82, 0x0002 }, { FlashManagerControl_fOrMainAndPreFlashPulse , 0x1c84, 0x0001 }, { FlashManagerControl_RefPointCalcMode , 0x1c86, 0x0000 }, { FlashManagerControl_wIntegrationStartPosition_LSByte , 0x1c8a, 0x0000 }, -{ FlashManagerControl_wIntegrationStartPosition_MSByte , 0x1c88, 0x0000 }, -{ FlashManagerControl_fOverrideIntegrationStartPosition , 0x1c8a, 0x0000 }, + { FlashManagerControl_wIntegrationStartPosition_MSByte , 0x1c89 ,0x0000}, + { FlashManagerControl_fOverrideIntegrationStartPosition , 0x1c8c ,0x0000}, { FlashManagerControl_fpFlashFiringDelay_us_LSByte , 0x1c90, 0x0000 }, -{ FlashManagerControl_fpFlashFiringDelay_us_MSByte , 0x1c8c, 0x0000 }, -{ FlashManagerControl_bNumberOfPreFlashes , 0x1c8e, 0x0000 }, + { FlashManagerControl_fpFlashFiringDelay_us_MSByte , 0x1c8f ,0x0000}, + { FlashManagerControl_bNumberOfPreFlashes , 0x1c92 ,0x0000}, { FlashManagerControl_fpPulseWidthMainFlash_us_LSByte , 0x1c96, 0x0000 }, -{ FlashManagerControl_fpPulseWidthMainFlash_us_MSByte , 0x1c90, 0x0000 }, + { FlashManagerControl_fpPulseWidthMainFlash_us_MSByte , 0x1c95 ,0x0000}, { FlashManagerControl_fpPulseWidthPreFlash_us_LSByte , 0x1c9a, 0x0000 }, -{ FlashManagerControl_fpPulseWidthPreFlash_us_MSByte , 0x1c92, 0x0000 }, + { FlashManagerControl_fpPulseWidthPreFlash_us_MSByte , 0x1c99 ,0x0000}, { FlashManagerControl_fpTimeBetweenTwoPreFlashes_us_LSByte , 0x1c9e, 0x0000 }, -{ FlashManagerControl_fpTimeBetweenTwoPreFlashes_us_MSByte , 0x1c94, 0x0000 }, + { FlashManagerControl_fpTimeBetweenTwoPreFlashes_us_MSByte , 0x1c9d ,0x0000}, { FlashManagerControl_fpTimeBetweenPreFlashAndMainFlash_us_LSByte , 0x1ca2, 0x0000 }, -{ FlashManagerControl_fpTimeBetweenPreFlashAndMainFlash_us_MSByte , 0x1c96, 0x0000 }, -{ FlashManagerControl_cMainFlashStartFrame , 0x1c98, 0x0000 }, + { FlashManagerControl_fpTimeBetweenPreFlashAndMainFlash_us_MSByte , 0x1ca1 ,0x0000}, + { FlashManagerControl_cMainFlashStartFrame , 0x1ca4 ,0x0000}, + + { FlashManagerControl_wMainFlashStartLine_LSByte , 0x1ca8, 0x0000 }, -{ FlashManagerControl_wMainFlashStartLine_MSByte , 0x1c9a, 0x0000 }, + { FlashManagerControl_wMainFlashStartLine_MSByte , 0x1ca7 ,0x0000}, { FlashManagerControl_wMainFlashStartPixel_LSByte , 0x1cac, 0x0000 }, -{ FlashManagerControl_wMainFlashStartPixel_MSByte , 0x1c9c, 0x0000 }, -{ FlashManagerControl_cPreFlashStartFrame , 0x1c9e, 0x0000 }, + { FlashManagerControl_wMainFlashStartPixel_MSByte , 0x1cab ,0x0000}, + { FlashManagerControl_cPreFlashStartFrame , 0x1cae ,0x0000}, { FlashManagerControl_wPreFlashStartLine_LSByte , 0x1cb2, 0x0000 }, -{ FlashManagerControl_wPreFlashStartLine_MSByte , 0x1ca0, 0x0000 }, + { FlashManagerControl_wPreFlashStartLine_MSByte , 0x1cb1 ,0x0000}, { FlashManagerControl_wPreFlashStartPixel_LSByte , 0x1cb6, 0x0000 }, -{ FlashManagerControl_wPreFlashStartPixel_MSByte , 0x1ca2, 0x0000 }, -{ FlashManagerControl_bTotalFramesRequired , 0x1ca4, 0x0000 }, + { FlashManagerControl_wPreFlashStartPixel_MSByte , 0x1cb5 ,0x0000}, + { FlashManagerControl_bTotalFramesRequired , 0x1cb8 ,0x0000}, + +// page "FlashManagerStatus" [read only] +// { FlashManagerStatus_fFlashSequencePending , 0x1d00, 0x0000 }, { FlashManagerStatus_cNumberFramesRequiredForPreFlashes , 0x1d02, 0x0000 }, { FlashManagerStatus_fpMainFlashPulseWidth_us_LSByte , 0x1d06, 0x0000 }, { FlashManagerStatus_fpMainFlashPulseWidth_us_MSByte , 0x1d05, 0x0000 }, { FlashManagerStatus_fpPreFlashPulseWidth_us_LSByte , 0x1d0a, 0x0000 }, @@ -3790,46 +5189,61 @@ struct nomadik_vpip_param vpip_default_p { FlashManagerStatus_wStartPreFlashPixel_LSByte , 0x1d26, 0x0000 }, { FlashManagerStatus_wStartPreFlashPixel_MSByte , 0x1d25, 0x0000 }, { FlashManagerStatus_cNumberFramesRequired , 0x1d28, 0x0000 }, { FlashManagerStatus_fPreFlashPending , 0x1d2a, 0x0000 }, { FlashManagerStatus_fMainFlashPending , 0x1d2c, 0x0000 }, -{ ExposureControls_bMode , 0x1d80, 0x0000 }, + +// page "ExposureControls" +// + { ExposureControls_bMode , 0x1d80 ,0x00}, + /*{ ExposureControls_bMetering , 0x1d82 ,0x0},*/ { ExposureControls_bMetering , 0x1d82, 0x0002 }, { ExposureControls_bManualExposureTime_s_num , 0x1d84, 0x0000 }, { ExposureControls_bManualExposureTime_s_den , 0x1d86, 0x0000 }, { ExposureControls_fpManualDesiredExposureTime_us_LSByte , 0x1d8a, 0x0000 }, { ExposureControls_fpManualDesiredExposureTime_us_MSByte , 0x1d89, 0x0000 }, { ExposureControls_fpColdStartDesiredTime_us_LSByte , 0x1d8e, 0x0000 }, + /*{ ExposureControls_fpColdStartDesiredTime_us_MSByte , 0x1d8d ,0x0000},*/ { ExposureControls_fpColdStartDesiredTime_us_MSByte , 0x1d8d, 0x59aa }, { ExposureControls_iExposureCompensation , 0x1d90, 0x0000 }, -{ ExposureControls_bMiscSettings , 0x1d92, 0x0000 }, + { ExposureControls_bMiscSettings , 0x1d92 ,0x0}, { ExposureControls_uwDirectModeCoarseIntegration_lines_LSByte , 0x1d96, 0x0000 }, { ExposureControls_uwDirectModeCoarseIntegration_lines_MSByte , 0x1d95, 0x0000 }, { ExposureControls_uwDirectModeFineIntegration_pixels_LSByte , 0x1d9a, 0x0000 }, { ExposureControls_uwDirectModeFineIntegration_pixels_MSByte , 0x1d99, 0x0000 }, { ExposureControls_uwDirectModeCodedAnalogGain_LSByte , 0x1d9e, 0x0000 }, { ExposureControls_uwDirectModeCodedAnalogGain_MSByte , 0x1d9d, 0x0000 }, -{ ExposureControls_fpDirectModeDigitalGain_LSByte , 0x1da2, 0x0000 }, -{ ExposureControls_fpDirectModeDigitalGain_MSByte , 0x1da1, 0x0000 }, + { ExposureControls_fpDirectModeDigitalGain_LSByte , 0x1da2 ,0x0}, + { ExposureControls_fpDirectModeDigitalGain_MSByte , 0x1da1 ,0x0}, { ExposureControls_uwFlashGunModeCoarseIntegration_lines_LSByte , 0x1da6, 0x0000 }, { ExposureControls_uwFlashGunModeCoarseIntegration_lines_MSByte , 0x1da5, 0x0000 }, { ExposureControls_uwFlashGunModeFineIntegration_pixels_LSByte , 0x1daa, 0x0000 }, { ExposureControls_uwFlashGunModeFineIntegration_pixels_MSByte , 0x1da9, 0x0000 }, { ExposureControls_uwFlashGunModeCodedAnalogGain_LSByte , 0x1dae, 0x0000 }, { ExposureControls_uwFlashGunModeCodedAnalogGain_MSByte , 0x1dad, 0x0000 }, { ExposureControls_fpFlashGunModeDigitalGain_LSByte , 0x1db2, 0x0000 }, { ExposureControls_fpFlashGunModeDigitalGain_MSByte , 0x1db1, 0x0000 }, { ExposureControls_fFreezeAutoExposure , 0x1db4, 0x0000 }, { ExposureControls_fpUserMaximumIntegrationTime_us_LSByte , 0x1db8, 0x0000 }, + /*{ ExposureControls_fpUserMaximumIntegrationTime_us_MSByte , 0x1db7 ,0x0000},*/ + { ExposureControls_fpUserMaximumIntegrationTime_us_MSByte , 0x1db7, 0x65d1 }, { ExposureControls_fpRecommendFlashGunAnalogGainThreshold_LSByte , 0x1dbc, 0x0000 }, + /*{ ExposureControls_fpRecommendFlashGunAnalogGainThreshold_MSByte , 0x1dbb ,0x0000}, + { ExposureControls_fEnableHighClipForDesiredExposureTime , 0x1dbe ,0x0000}, + { ExposureControls_bAntiFlickerMode , 0x1dc0 ,0x0000},*/ + { ExposureControls_fpRecommendFlashGunAnalogGainThreshold_MSByte , 0x1dbb, 0x624a }, { ExposureControls_fEnableHighClipForDesiredExposureTime , 0x1dbe, 0x0001 }, { ExposureControls_bAntiFlickerMode , 0x1dc0, 0x0001 }, + { ExposureControls_fInhibitExposurePresetModeForFlash , 0x1dc2, 0x0000 }, -{ ExposureStatus_bAlgorithmStatus , 0x1e00, 0x0000 }, -{ ExposureStatus_bCompilerStatus , 0x1e02, 0x0000 }, + +// page "ExposureStatus" [read only] +// + { ExposureStatus_bAlgorithmStatus , 0x1e00,0x0}, + { ExposureStatus_bCompilerStatus , 0x1e02,0x0}, { ExposureStatus_fWhiteBalanceGainIncludedInCurrentExposure , 0x1e04, 0x0000 }, { ExposureStatus_fBadExposureForIterativeWhiteBalance , 0x1e06, 0x0000 }, { ExposureStatus_uwCoarseIntegrationPending_lines_LSByte , 0x1e0a, 0x0000 }, { ExposureStatus_uwCoarseIntegrationPending_lines_MSByte , 0x1e09, 0x0000 }, { ExposureStatus_uwFineIntegrationPending_pixels_LSByte , 0x1e0e, 0x0000 }, @@ -3849,31 +5263,46 @@ struct nomadik_vpip_param vpip_default_p { ExposureStatus_fpTotalIntegrationTimePending_us_MSByte , 0x1e27, 0x0000 }, { ExposureStatus_uwCodedAnalogGainPending_LSByte , 0x1e2c, 0x0000 }, { ExposureStatus_uwCodedAnalogGainPending_MSByte , 0x1e2b, 0x0000 }, { ExposureStatus_fExposureIsStableforAutoFocus , 0x1e2e, 0x0000 }, { ExposureStatus_bRuntimeExposureTarget , 0x1e30, 0x0000 }, + +// page "ExposureParametersApplied" [read only] +// { ExposureParametersApplied_uwCoarseIntegration_lines_LSByte , 0x1e82, 0x0000 }, { ExposureParametersApplied_uwCoarseIntegration_lines_MSByte , 0x1e81, 0x0000 }, { ExposureParametersApplied_uwFineIntegration_pixels_LSByte , 0x1e86, 0x0000 }, { ExposureParametersApplied_uwFineIntegration_pixels_MSByte , 0x1e85, 0x0000 }, { ExposureParametersApplied_uwCodedAnalogGain_LSByte , 0x1e8a, 0x0000 }, { ExposureParametersApplied_uwCodedAnalogGain_MSByte , 0x1e89, 0x0000 }, { ExposureParametersApplied_fpDigitalGain_LSByte , 0x1e8e, 0x0000 }, { ExposureParametersApplied_fpDigitalGain_MSByte , 0x1e8d, 0x0000 }, + +// page "ExposureStatisticsStatus" [read only] +// { ExposureStatisticsStatus_fpMeanEnergy_LSByte , 0x1f02, 0x0000 }, { ExposureStatisticsStatus_fpMeanEnergy_MSByte , 0x1f01, 0x0000 }, + +// page "ExposureCycleTest" [mode static] +// { ExposureCycleTest_fpInitialDesiredExposureTime_LSByte , 0x1f82, 0x0000 }, { ExposureCycleTest_fpInitialDesiredExposureTime_MSByte , 0x1f81, 0x0000 }, { ExposureCycleTest_fpFinalDesiredExposureTime_LSByte , 0x1f86, 0x0000 }, { ExposureCycleTest_fpFinalDesiredExposureTime_MSByte , 0x1f85, 0x0000 }, { ExposureCycleTest_fpExposureStep_LSByte , 0x1f8a, 0x0000 }, { ExposureCycleTest_fpExposureStep_MSByte , 0x1f89, 0x0000 }, { ExposureCycleTest_bStepDirection , 0x1f8c, 0x0000 }, + +// page "ExposureTestCoin" [mode static] +// { ExposureTestCoin_fTestCoinEnabled , 0x2000, 0x0000 }, { ExposureTestCoin_fRunForTest , 0x2002, 0x0000 }, { ExposureTestCoin_bStatusCoin , 0x2004, 0x0000 }, { ExposureTestCoin_bControlCoin , 0x2006, 0x0000 }, + +// page "ExposureAlgorithmControls" +// { ExposureAlgorithmControls_fpMaximumStep_LSByte , 0x2082, 0x0000 }, { ExposureAlgorithmControls_fpMaximumStep_MSByte , 0x2081, 0x0000 }, { ExposureAlgorithmControls_fpMinimumStep_LSByte , 0x2086, 0x0000 }, { ExposureAlgorithmControls_fpMinimumStep_MSByte , 0x2085, 0x0000 }, { ExposureAlgorithmControls_fpMinimumDesiredExposureTime_us_LSByte , 0x208a, 0x0000 }, @@ -3883,13 +5312,18 @@ struct nomadik_vpip_param vpip_default_p { ExposureAlgorithmControls_fpMaximumNegativeStepThreshold_LSByte , 0x2092, 0x0000 }, { ExposureAlgorithmControls_fpMaximumNegativeStepThreshold_MSByte , 0x2091, 0x0000 }, { ExposureAlgorithmControls_fpRelativeOnTargetStabilityThreshold_LSByte , 0x2096, 0x0000 }, { ExposureAlgorithmControls_fpRelativeOnTargetStabilityThreshold_MSByte , 0x2095, 0x0000 }, { ExposureAlgorithmControls_fpDigitalGainFloor_LSByte , 0x209a, 0x0000 }, + /*{ ExposureAlgorithmControls_fpDigitalGainFloor_MSByte , 0x2099 ,0x0000}, + { ExposureAlgorithmControls_fpDigitalGainCeiling_LSByte , 0x209e ,0x0000}, + { ExposureAlgorithmControls_fpDigitalGainCeiling_MSByte , 0x209d ,0x0000},*/ + { ExposureAlgorithmControls_fpDigitalGainFloor_MSByte , 0x2099, 0x3e00 }, { ExposureAlgorithmControls_fpDigitalGainCeiling_LSByte , 0x209e, 0x0000 }, { ExposureAlgorithmControls_fpDigitalGainCeiling_MSByte , 0x209d, 0x4080 }, + { ExposureAlgorithmControls_fpRelativeIntTimeHysThreshold_LSByte , 0x20a2, 0x0000 }, { ExposureAlgorithmControls_fpRelativeIntTimeHysThreshold_MSByte , 0x20a1, 0x0000 }, { ExposureAlgorithmControls_fpRelativeDigitalGainHysThreshold_LSByte , 0x20a6, 0x0000 }, { ExposureAlgorithmControls_fpRelativeDigitalGainHysThreshold_MSByte , 0x20a5, 0x0000 }, { ExposureAlgorithmControls_fpRelativeCompilationProblemThreshold_LSByte , 0x20aa, 0x0000 }, @@ -3901,53 +5335,103 @@ struct nomadik_vpip_param vpip_default_p { ExposureAlgorithmControls_fpMaximumManualExposureTime_s_LSByte , 0x20b6, 0x0000 }, { ExposureAlgorithmControls_fpMaximumManualExposureTime_s_MSByte , 0x20b5, 0x0000 }, { ExposureAlgorithmControls_fpRelativeStabilityThresholdForAutoFocus_LSByte , 0x20ba, 0x0000 }, { ExposureAlgorithmControls_fpRelativeStabilityThresholdForAutoFocus_MSByte , 0x20b9, 0x0000 }, { ExposureAlgorithmControls_bLeakShift , 0x20bc, 0x0000 }, + +// page "ExposureAlgorithmStatus" [read only] +// { ExposureAlgorithmStatus_fpLeakyEnergy_LSByte , 0x2102, 0x0000 }, { ExposureAlgorithmStatus_fpLeakyEnergy_MSByte , 0x2101, 0x0000 }, { ExposureAlgorithmStatus_fpRelativeStep_LSByte , 0x2106, 0x0000 }, { ExposureAlgorithmStatus_fpRelativeStep_MSByte , 0x2105, 0x0000 }, + +// page "ExposureUpdateErrorControl" +// { ExposureUpdateErrorControl_bMaximumNumberOfFrames , 0x2180, 0x0000 }, + +// page "ExposureUpdateErrorStatus" [read only] +// { ExposureUpdateErrorStatus_bNumberOfForcedInputProcUpdates , 0x2200, 0x0000 }, { ExposureUpdateErrorStatus_bNumberOfConsecutiveDelayedFrames , 0x2202, 0x0000 }, { ExposureUpdateErrorStatus_fForceInputProcUpdation , 0x2204, 0x0000 }, -{ WhiteBalanceControls_bMode , 0x2280, 0x0001 }, + +// page "WhiteBalanceControls" +// + { WhiteBalanceControls_bMode , 0x2280 ,0x1}, { WhiteBalanceControls_bManualRedGain , 0x2282, 0x0000 }, { WhiteBalanceControls_bManualGreenGain , 0x2284, 0x0000 }, { WhiteBalanceControls_bManualBlueGain , 0x2286, 0x0000 }, { WhiteBalanceControls_bMiscSettings , 0x2288, 0x0000 }, { WhiteBalanceControls_fpFlashRedGain_LSByte , 0x228c, 0x0000 }, + /* + { WhiteBalanceControls_fpFlashRedGain_MSByte , 0x228b ,0x0000}, + { WhiteBalanceControls_fpFlashGreenGain_LSByte , 0x2290 ,0x0000}, + { WhiteBalanceControls_fpFlashGreenGain_MSByte , 0x228f ,0x0000}, + { WhiteBalanceControls_fpFlashBlueGain_LSByte , 0x2294 ,0x0000}, + { WhiteBalanceControls_fpFlashBlueGain_MSByte , 0x2293 ,0x0000}, + */ + { WhiteBalanceControls_fpFlashRedGain_MSByte , 0x228b, 0x3e66 }, { WhiteBalanceControls_fpFlashGreenGain_LSByte , 0x2290, 0x0000 }, { WhiteBalanceControls_fpFlashGreenGain_MSByte , 0x228f, 0x3e00 }, { WhiteBalanceControls_fpFlashBlueGain_LSByte , 0x2294, 0x0000 }, { WhiteBalanceControls_fpFlashBlueGain_MSByte , 0x2293, 0x3f0a }, + { WhiteBalanceControls_fInhibitWhiteBalancePresetModeForFlash , 0x2296, 0x0000 }, + +// page "WhiteBalanceAlgorithmControls" +// { WhiteBalanceAlgorithmControls_fpStableTotalStepThreshold_LSByte , 0x2302, 0x0000 }, -{ WhiteBalanceAlgorithmControls_fpStableTotalStepThreshold_MSByte , 0x2301, 0x2c00 }, + { WhiteBalanceAlgorithmControls_fpStableTotalStepThreshold_MSByte , 0x2301 ,0x0000}, { WhiteBalanceAlgorithmControls_fpMinimumRelativeStep_LSByte , 0x2306, 0x0000 }, -{ WhiteBalanceAlgorithmControls_fpMinimumRelativeStep_MSByte , 0x2305, 0x2a00 }, + { WhiteBalanceAlgorithmControls_fpMinimumRelativeStep_MSByte , 0x2305 ,0x0000}, { WhiteBalanceAlgorithmControls_fpMaximumRelativeStep_LSByte , 0x230a, 0x0000 }, -{ WhiteBalanceAlgorithmControls_fpMaximumRelativeStep_MSByte , 0x2309, 0x3800 }, + { WhiteBalanceAlgorithmControls_fpMaximumRelativeStep_MSByte , 0x2309 ,0x0000}, { WhiteBalanceAlgorithmControls_fpStepProportion_LSByte , 0x230e, 0x0000 }, -{ WhiteBalanceAlgorithmControls_fpStepProportion_MSByte , 0x230d, 0x3d00 }, + { WhiteBalanceAlgorithmControls_fpStepProportion_MSByte , 0x230d ,0x0000}, + +// page "WhiteBalanceStatus" [read only] +// { WhiteBalanceStatus_bStatus , 0x2380, 0x0000 }, { WhiteBalanceStatus_fUnityGainsUsed , 0x2382, 0x0000 }, { WhiteBalanceStatus_fpRedGain_LSByte , 0x2386, 0x0000 }, { WhiteBalanceStatus_fpRedGain_MSByte , 0x2385, 0x0000 }, { WhiteBalanceStatus_fpGreenGain_LSByte , 0x238a, 0x0000 }, { WhiteBalanceStatus_fpGreenGain_MSByte , 0x2389, 0x0000 }, { WhiteBalanceStatus_fpBlueGain_LSByte , 0x238e, 0x0000 }, { WhiteBalanceStatus_fpBlueGain_MSByte , 0x238d, 0x0000 }, + +// page "WhiteBalanceStatisticsControls" +// { WhiteBalanceStatisticsControls_bLowThreshold , 0x2400, 0x0000 }, + +// page "WhiteBalanceStatisticsStatus" [read only] +// { WhiteBalanceStatisticsStatus_fpRedEnergy_LSByte , 0x2482, 0x0000 }, { WhiteBalanceStatisticsStatus_fpRedEnergy_MSByte , 0x2481, 0x0000 }, { WhiteBalanceStatisticsStatus_fpGreenEnergy_LSByte , 0x2486, 0x0000 }, { WhiteBalanceStatisticsStatus_fpGreenEnergy_MSByte , 0x2485, 0x0000 }, { WhiteBalanceStatisticsStatus_fpBlueEnergy_LSByte , 0x248a, 0x0000 }, { WhiteBalanceStatisticsStatus_fpBlueEnergy_MSByte , 0x2489, 0x0000 }, + +// page "MinWeightedWBControls" +// + /* + { MinWeightedWBControls_fDisable , 0x2500 ,0x01}, + { MinWeightedWBControls_uwSaturationThreshold_LSByte , 0x2504 ,0x0000}, + { MinWeightedWBControls_uwSaturationThreshold_MSByte , 0x2503 ,0x0000}, + { MinWeightedWBControls_fpRedTiltGain_LSByte , 0x2508 ,0x0000}, + { MinWeightedWBControls_fpRedTiltGain_MSByte , 0x2507 ,0x0000}, + { MinWeightedWBControls_fpGreen1TiltGain_LSByte , 0x250c ,0x0000}, + { MinWeightedWBControls_fpGreen1TiltGain_MSByte , 0x250b ,0x0000}, + { MinWeightedWBControls_fpGreen2TiltGain_LSByte , 0x2510 ,0x0000}, + { MinWeightedWBControls_fpGreen2TiltGain_MSByte , 0x250f ,0x0000}, + { MinWeightedWBControls_fpBlueTiltGain_LSByte , 0x2514 ,0x0000}, + { MinWeightedWBControls_fpBlueTiltGain_MSByte , 0x2513 ,0x0000}, + { MinWeightedWBControls_GreenChannelToAccumulate , 0x2516 ,0x0000}, +*/ { MinWeightedWBControls_fDisable , 0x2500, 0x0000 }, { MinWeightedWBControls_uwSaturationThreshold_LSByte , 0x2504, 0x0000 }, { MinWeightedWBControls_uwSaturationThreshold_MSByte , 0x2503, 0x0300 }, { MinWeightedWBControls_fpRedTiltGain_LSByte , 0x2508, 0x0000 }, { MinWeightedWBControls_fpRedTiltGain_MSByte , 0x2507, 0x3e00 }, @@ -3956,38 +5440,56 @@ struct nomadik_vpip_param vpip_default_p { MinWeightedWBControls_fpGreen2TiltGain_LSByte , 0x2510, 0x0000 }, { MinWeightedWBControls_fpGreen2TiltGain_MSByte , 0x250f, 0x3e40 }, { MinWeightedWBControls_fpBlueTiltGain_LSByte , 0x2514, 0x0000 }, { MinWeightedWBControls_fpBlueTiltGain_MSByte , 0x2513, 0x3e40 }, { MinWeightedWBControls_GreenChannelToAccumulate , 0x2516, 0x0000 }, + +// page "MinWeightedWBStatus" [read only] +// { MinWeightedWBStatus_uwZone_X_Offset_LSByte , 0x2582, 0x0000 }, { MinWeightedWBStatus_uwZone_X_Offset_MSByte , 0x2581, 0x0000 }, { MinWeightedWBStatus_uwZone_Y_Offset_LSByte , 0x2586, 0x0000 }, { MinWeightedWBStatus_uwZone_Y_Offset_MSByte , 0x2585, 0x0000 }, { MinWeightedWBStatus_uwZone_X_Size_LSByte , 0x258a, 0x0000 }, { MinWeightedWBStatus_uwZone_X_Size_MSByte , 0x2589, 0x0000 }, { MinWeightedWBStatus_uwZone_Y_Size_LSByte , 0x258e, 0x0000 }, { MinWeightedWBStatus_uwZone_Y_Size_MSByte , 0x258d, 0x0000 }, { MinWeightedWBStatus_fpNumberMacroPixel_LSByte , 0x2592, 0x0000 }, { MinWeightedWBStatus_fpNumberMacroPixel_MSByte , 0x2591, 0x0000 }, + +// page "MWWBStatisticsStatus" [read only] +// { MWWBStatisticsStatus_fpRedStatistics_LSByte , 0x2602, 0x0000 }, { MWWBStatisticsStatus_fpRedStatistics_MSByte , 0x2601, 0x0000 }, { MWWBStatisticsStatus_fpGreenStatistics_LSByte , 0x2606, 0x0000 }, { MWWBStatisticsStatus_fpGreenStatistics_MSByte , 0x2605, 0x0000 }, { MWWBStatisticsStatus_fpBlueStatistics_LSByte , 0x260a, 0x0000 }, { MWWBStatisticsStatus_fpBlueStatistics_MSByte , 0x2609, 0x0000 }, + +// page "MiscellaneousErrorStatus" [read only] +// { MiscellaneousErrorStatus_bNumberOfEWBStatisticsErrors , 0x2680, 0x0000 }, { MiscellaneousErrorStatus_bEWBStatisticsInterruptCount , 0x2682, 0x0000 }, -{ AutomaticFrameRateControl_bMode , 0x2700, 0x0001 }, -{ AutomaticFrameRateControl_bImpliedGainThresholdLow_num , 0x2702, 0x0001 }, -{ AutomaticFrameRateControl_bImpliedGainThresholdLow_den , 0x2704, 0x0001 }, -{ AutomaticFrameRateControl_bImpliedGainThresholdHigh_num , 0x2706, 0x0003 }, -{ AutomaticFrameRateControl_bImpliedGainThresholdHigh_den , 0x2708, 0x0002 }, -{ AutomaticFrameRateControl_bUserMinimumFrameRate_Hz , 0x270a, 0x000f }, -{ AutomaticFrameRateControl_bUserMaximumFrameRate_Hz , 0x270c, 0x001e }, -{ AutomaticFrameRateControl_bRelativeChange_num , 0x270e, 0x0001 }, -{ AutomaticFrameRateControl_bRelativeChange_den , 0x2710, 0x0008 }, -{ AutomaticFrameRateControl_fDivorceMinFrameRateFromMaxIntegration , 0x2712, 0x0001 }, + +// page "AutomaticFrameRateControl" +// + + { AutomaticFrameRateControl_bMode , 0x2700 ,0x0}, + { AutomaticFrameRateControl_bImpliedGainThresholdLow_num , 0x2702 ,0x0000}, + { AutomaticFrameRateControl_bImpliedGainThresholdLow_den , 0x2704 ,0x0000}, + { AutomaticFrameRateControl_bImpliedGainThresholdHigh_num , 0x2706 ,0x0000}, + { AutomaticFrameRateControl_bImpliedGainThresholdHigh_den , 0x2708 ,0x0000}, + { AutomaticFrameRateControl_bUserMinimumFrameRate_Hz , 0x270a ,0x0000}, + { AutomaticFrameRateControl_bUserMaximumFrameRate_Hz , 0x270c ,0x0000}, + { AutomaticFrameRateControl_bRelativeChange_num , 0x270e ,0x0000}, + { AutomaticFrameRateControl_bRelativeChange_den , 0x2710 ,0x0000}, + { AutomaticFrameRateControl_fDivorceMinFrameRateFromMaxIntegration , 0x2712 ,0x0000}, + + + +// page "AutomaticFrameRateStatus" [read only] +// { AutomaticFrameRateStatus_fpImpliedGain_LSByte , 0x2782, 0x0000 }, { AutomaticFrameRateStatus_fpImpliedGain_MSByte , 0x2781, 0x0000 }, { AutomaticFrameRateStatus_uwMaximumFrameLength_lines_LSByte , 0x2786, 0x0000 }, { AutomaticFrameRateStatus_uwMaximumFrameLength_lines_MSByte , 0x2785, 0x0000 }, { AutomaticFrameRateStatus_uwMinimumFrameLength_lines_LSByte , 0x278a, 0x0000 }, @@ -4000,32 +5502,99 @@ struct nomadik_vpip_param vpip_default_p { AutomaticFrameRateStatus_uwCurrentFrameLength_lines_MSByte , 0x2795, 0x0000 }, { AutomaticFrameRateStatus_uwDesiredFrameLength_lines_LSByte , 0x279a, 0x0000 }, { AutomaticFrameRateStatus_uwDesiredFrameLength_lines_MSByte , 0x2799, 0x0000 }, { AutomaticFrameRateStatus_fAutomaticFrameRateStable , 0x279c, 0x0000 }, { AutomaticFrameRateStatus_fAutomaticFrameRateClip , 0x279e, 0x0000 }, + +// page "StaticFrameRateControl" +// + /* + { StaticFrameRateControl_uwDesiredFrameRate_Num_LSByte ,0x2802,0x0000}, + { StaticFrameRateControl_uwDesiredFrameRate_Num_MSByte ,0x2801,0x7}, + { StaticFrameRateControl_bDesiredFrameRate_Den , 0x2804,0x01}, + */ { StaticFrameRateControl_uwDesiredFrameRate_Num_LSByte , 0x2802, 0x0000 }, { StaticFrameRateControl_uwDesiredFrameRate_Num_MSByte , 0x2802, 0x001e }, { StaticFrameRateControl_bDesiredFrameRate_Den , 0x2804, 0x0001 }, + +// page "StaticFrameRateStatus" [read only] +// { StaticFrameRateStatus_uwRequestedFrameRate_Hz_LSByte , 0x2882, 0x0000 }, { StaticFrameRateStatus_uwRequestedFrameRate_Hz_MSByte , 0x2881, 0x0000 }, { StaticFrameRateStatus_uwMaxFrameRate_Hz_LSByte , 0x2886, 0x0000 }, { StaticFrameRateStatus_uwMaxFrameRate_Hz_MSByte , 0x2885, 0x0000 }, { StaticFrameRateStatus_uwMinFrameRate_Hz_LSByte , 0x288a, 0x0000 }, { StaticFrameRateStatus_uwMinFrameRate_Hz_MSByte , 0x2889, 0x0000 }, { StaticFrameRateStatus_fChangePending , 0x288c, 0x0000 }, { StaticFrameRateStatus_uwRequiredFrameLength_lines_LSByte , 0x2890, 0x0000 }, { StaticFrameRateStatus_uwRequiredFrameLength_lines_MSByte , 0x288f, 0x0000 }, { StaticFrameRateStatus_ClipFrameRate , 0x2892, 0x0000 }, + +// page "ImageStability" [read only] +// { ImageStability_fWhiteBalanceStable , 0x2900, 0x0000 }, { ImageStability_fExposureStable , 0x2902, 0x0000 }, { ImageStability_fFocusStable , 0x2904, 0x0000 }, { ImageStability_fLowPowerStreaming , 0x2906, 0x0000 }, { ImageStability_fStable , 0x2908, 0x0000 }, { ImageStability_fForcedStablility , 0x290a, 0x0000 }, + +// page "ImageStabilityMonitorControl" +// { ImageStabilityMonitorControl_bMaxNumberOfFramesToWaitForStability , 0x2980, 0x0000 }, + +// page "ColdStartManagerControl" +// { ColdStartManagerControl_bControlCoin , 0x2a00, 0x0000 }, + +// page "ColdStartManagerStatus" [read only] +// { ColdStartManagerStatus_bStatusCoin , 0x2a80, 0x0000 }, + +// page "ColourEngine0_ColourMatrixFarSensor" +// +/* + { ColourEngine0_ColourMatrixFarSensor_fpRInR_LSByte , 0x2b02 ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpRInR_MSByte , 0x2b01 ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpGInR_LSByte , 0x2b06 ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpGInR_MSByte , 0x2b05 ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpBInR_LSByte , 0x2b0a ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpBInR_MSByte , 0x2b09 ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpRInG_LSByte , 0x2b0e ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpRInG_MSByte , 0x2b0d ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpGInG_LSByte , 0x2b12 ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpGInG_MSByte , 0x2b11 ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpBInG_LSByte , 0x2b16 ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpBInG_MSByte , 0x2b15 ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpRInB_LSByte , 0x2b1a ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpRInB_MSByte , 0x2b19 ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpGInB_LSByte , 0x2b1e ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpGInB_MSByte , 0x2b1d ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpBInB_LSByte , 0x2b22 ,0x0000}, + { ColourEngine0_ColourMatrixFarSensor_fpBInB_MSByte , 0x2b21 ,0x0000}, + +// page "ColourEngine0_ColourMatrixNearSensor" +// + { ColourEngine0_ColourMatrixNearSensor_fpRInR_LSByte , 0x2b82 ,0x02}, + { ColourEngine0_ColourMatrixNearSensor_fpRInR_MSByte , 0x2b81 ,0x6400}, + { ColourEngine0_ColourMatrixNearSensor_fpGInR_LSByte , 0x2b86 ,0x0002}, + { ColourEngine0_ColourMatrixNearSensor_fpGInR_MSByte , 0x2b85 ,0x6400}, + { ColourEngine0_ColourMatrixNearSensor_fpBInR_LSByte , 0x2b8a ,0x0002}, + { ColourEngine0_ColourMatrixNearSensor_fpBInR_MSByte , 0x2b89 ,0x6400}, + { ColourEngine0_ColourMatrixNearSensor_fpRInG_LSByte , 0x2b8e ,0x0004}, + { ColourEngine0_ColourMatrixNearSensor_fpRInG_MSByte , 0x2b8d ,0xB200}, + { ColourEngine0_ColourMatrixNearSensor_fpGInG_LSByte , 0x2b92 ,0x0004}, + { ColourEngine0_ColourMatrixNearSensor_fpGInG_MSByte , 0x2b91 ,0xB200}, + { ColourEngine0_ColourMatrixNearSensor_fpBInG_LSByte , 0x2b96 ,0x0004}, + { ColourEngine0_ColourMatrixNearSensor_fpBInG_MSByte , 0x2b95 ,0xB200}, + { ColourEngine0_ColourMatrixNearSensor_fpRInB_LSByte , 0x2b9a ,0x0000}, + { ColourEngine0_ColourMatrixNearSensor_fpRInB_MSByte , 0x2b99 ,0xe900}, + { ColourEngine0_ColourMatrixNearSensor_fpGInB_LSByte , 0x2b9e ,0x0000}, + { ColourEngine0_ColourMatrixNearSensor_fpGInB_MSByte , 0x2b9d ,0xe900}, + { ColourEngine0_ColourMatrixNearSensor_fpBInB_LSByte , 0x2ba2 ,0x0000}, + { ColourEngine0_ColourMatrixNearSensor_fpBInB_MSByte , 0x2ba1 ,0xe900}, +*/ { ColourEngine0_ColourMatrixFarSensor_fpRInR_LSByte , 0x2b02, 0x0000 }, { ColourEngine0_ColourMatrixFarSensor_fpRInR_MSByte , 0x2b01, 0x3fd3 }, { ColourEngine0_ColourMatrixFarSensor_fpGInR_LSByte , 0x2b06, 0x0000 }, { ColourEngine0_ColourMatrixFarSensor_fpGInR_MSByte , 0x2b05, 0xbce0 }, { ColourEngine0_ColourMatrixFarSensor_fpBInR_LSByte , 0x2b0a, 0x0000 }, @@ -4040,10 +5609,12 @@ struct nomadik_vpip_param vpip_default_p { ColourEngine0_ColourMatrixFarSensor_fpRInB_MSByte , 0x2b19, 0xb717 }, { ColourEngine0_ColourMatrixFarSensor_fpGInB_LSByte , 0x2b1e, 0x0000 }, { ColourEngine0_ColourMatrixFarSensor_fpGInB_MSByte , 0x2b1d, 0xbd29 }, { ColourEngine0_ColourMatrixFarSensor_fpBInB_LSByte , 0x2b22, 0x0000 }, { ColourEngine0_ColourMatrixFarSensor_fpBInB_MSByte , 0x2b21, 0x3fc6 }, + + { ColourEngine0_ColourMatrixNearSensor_fpRInR_LSByte , 0x2b82, 0x0002 }, { ColourEngine0_ColourMatrixNearSensor_fpRInR_MSByte , 0x2b81, 0x6400 }, { ColourEngine0_ColourMatrixNearSensor_fpGInR_LSByte , 0x2b86, 0x0002 }, { ColourEngine0_ColourMatrixNearSensor_fpGInR_MSByte , 0x2b85, 0x6400 }, { ColourEngine0_ColourMatrixNearSensor_fpBInR_LSByte , 0x2b8a, 0x0002 }, @@ -4058,10 +5629,13 @@ struct nomadik_vpip_param vpip_default_p { ColourEngine0_ColourMatrixNearSensor_fpRInB_MSByte , 0x2b99, 0xe900 }, { ColourEngine0_ColourMatrixNearSensor_fpGInB_LSByte , 0x2b9e, 0x0000 }, { ColourEngine0_ColourMatrixNearSensor_fpGInB_MSByte , 0x2b9d, 0xe900 }, { ColourEngine0_ColourMatrixNearSensor_fpBInB_LSByte , 0x2ba2, 0x0000 }, { ColourEngine0_ColourMatrixNearSensor_fpBInB_MSByte , 0x2ba1, 0xe900 }, + +// page "ColourEngine0_ColourMatrixDamped" [read only] +// { ColourEngine0_ColourMatrixDamped_wRInR_LSByte , 0x2c02, 0x0000 }, { ColourEngine0_ColourMatrixDamped_wRInR_MSByte , 0x2c01, 0x0000 }, { ColourEngine0_ColourMatrixDamped_wGInR_LSByte , 0x2c06, 0x0000 }, { ColourEngine0_ColourMatrixDamped_wGInR_MSByte , 0x2c05, 0x0000 }, { ColourEngine0_ColourMatrixDamped_wBInR_LSByte , 0x2c0a, 0x0000 }, @@ -4076,17 +5650,53 @@ struct nomadik_vpip_param vpip_default_p { ColourEngine0_ColourMatrixDamped_wRInB_MSByte , 0x2c19, 0x0000 }, { ColourEngine0_ColourMatrixDamped_wGInB_LSByte , 0x2c1e, 0x0000 }, { ColourEngine0_ColourMatrixDamped_wGInB_MSByte , 0x2c1d, 0x0000 }, { ColourEngine0_ColourMatrixDamped_wBInB_LSByte , 0x2c22, 0x0000 }, { ColourEngine0_ColourMatrixDamped_wBInB_MSByte , 0x2c21, 0x0000 }, + +// page "ColourEngine0_ColourMatrixDamperControl" +// + /* + { ColourEngine0_ColourMatrixDamperControl_fDisableMatrixDamping , 0x2c80 ,0x1},//hardcoded used at two places..in update service it can be changed + { ColourEngine0_ColourMatrixDamperControl_DamperLowThreshold_LSByte , 0x2c84 ,0x0000}, + { ColourEngine0_ColourMatrixDamperControl_DamperLowThreshold_MSByte , 0x2c83 ,0x0000}, + { ColourEngine0_ColourMatrixDamperControl_DamperHighThreshold_LSByte , 0x2c88,0x0000}, + { ColourEngine0_ColourMatrixDamperControl_DamperHighThreshold_MSByte , 0x2c87,0x0000}, + { ColourEngine0_ColourMatrixDamperControl_MinimumDamperOutput_LSByte , 0x2c8c,0x0000}, + { ColourEngine0_ColourMatrixDamperControl_MinimumDamperOutput_MSByte , 0x2c8b,0x0000}, + */ { ColourEngine0_ColourMatrixDamperControl_fDisableMatrixDamping , 0x2c80, 0x0000 }, { ColourEngine0_ColourMatrixDamperControl_DamperLowThreshold_LSByte , 0x2c84, 0x0000 }, { ColourEngine0_ColourMatrixDamperControl_DamperLowThreshold_MSByte , 0x2c83, 0x62ac }, { ColourEngine0_ColourMatrixDamperControl_DamperHighThreshold_LSByte , 0x2c88, 0x0000 }, { ColourEngine0_ColourMatrixDamperControl_DamperHighThreshold_MSByte , 0x2c87, 0x64ac }, { ColourEngine0_ColourMatrixDamperControl_MinimumDamperOutput_LSByte , 0x2c8c, 0x0000 }, { ColourEngine0_ColourMatrixDamperControl_MinimumDamperOutput_MSByte , 0x2c8b, 0x0000 }, + +// page "ColourEngine0_ApertureCorrectionControls" +// +/* + { ColourEngine0_ApertureCorrectionControls_fDisableCorrection , 0x2d00 ,0x1}, + { ColourEngine0_ApertureCorrectionControls_bMaxGain , 0x2d02 ,0x15}, + { ColourEngine0_ApertureCorrectionControls_fDisableGainDamping , 0x2d04 ,0x1}, + { ColourEngine0_ApertureCorrectionControls_DamperLowThreshold_Gain_LSByte , 0x2d08 ,0x0000}, + { ColourEngine0_ApertureCorrectionControls_DamperLowThreshold_Gain_MSByte , 0x2d07 ,0x0000}, + { ColourEngine0_ApertureCorrectionControls_DamperHighThreshold_Gain_LSByte , 0x2d0c ,0x0000}, + { ColourEngine0_ApertureCorrectionControls_DamperHighThreshold_Gain_MSByte , 0x2d0b ,0x0000}, + { ColourEngine0_ApertureCorrectionControls_MinimumDamperOutput_Gain_LSByte , 0x2d10 ,0x0000}, + { ColourEngine0_ApertureCorrectionControls_MinimumDamperOutput_Gain_MSByte , 0x2d0f ,0x0000}, + { ColourEngine0_ApertureCorrectionControls_bMinimumCoringThreshold , 0x2d12 ,0x15}, + { ColourEngine0_ApertureCorrectionControls_fDisableCoringDamping , 0x2d14 ,0x1}, + { ColourEngine0_ApertureCorrectionControls_bMinimumHighThreshold , 0x2d16,0x0000}, + { ColourEngine0_ApertureCorrectionControls_DamperLowThreshold_Coring_LSByte , 0x2d1a ,0x0000}, + { ColourEngine0_ApertureCorrectionControls_DamperLowThreshold_Coring_MSByte , 0x2d19 ,0x0000}, + { ColourEngine0_ApertureCorrectionControls_DamperHighThreshold_Coring_LSByte , 0x2d1e ,0x0000}, + { ColourEngine0_ApertureCorrectionControls_DamperHighThreshold_Coring_MSByte , 0x2d1d ,0x0000}, + { ColourEngine0_ApertureCorrectionControls_MinimumDamperOutput_Coring_LSByte , 0x2d22 ,0x0000}, + { ColourEngine0_ApertureCorrectionControls_MinimumDamperOutput_Coring_MSByte , 0x2d21 ,0x0000}, +*/ + { ColourEngine0_ApertureCorrectionControls_fDisableCorrection , 0x2d00, 0x0000 }, { ColourEngine0_ApertureCorrectionControls_bMaxGain , 0x2d02, 0x0010 }, { ColourEngine0_ApertureCorrectionControls_fDisableGainDamping , 0x2d04, 0x0000 }, { ColourEngine0_ApertureCorrectionControls_DamperLowThreshold_Gain_LSByte , 0x2d08, 0x0000 }, { ColourEngine0_ApertureCorrectionControls_DamperLowThreshold_Gain_MSByte , 0x2d07, 0x5871 }, @@ -4101,21 +5711,53 @@ struct nomadik_vpip_param vpip_default_p { ColourEngine0_ApertureCorrectionControls_DamperLowThreshold_Coring_MSByte , 0x2d19, 0x5871 }, { ColourEngine0_ApertureCorrectionControls_DamperHighThreshold_Coring_LSByte , 0x2d1e, 0x0000 }, { ColourEngine0_ApertureCorrectionControls_DamperHighThreshold_Coring_MSByte , 0x2d1d, 0x63d1 }, { ColourEngine0_ApertureCorrectionControls_MinimumDamperOutput_Coring_LSByte , 0x2d22, 0x0000 }, { ColourEngine0_ApertureCorrectionControls_MinimumDamperOutput_Coring_MSByte , 0x2d21, 0x3a00 }, + +// page "ColourEngine0_ApertureCorrectionStatus" [read only] +// { ColourEngine0_ApertureCorrectionStatus_bGain , 0x2d80, 0x0000 }, { ColourEngine0_ApertureCorrectionStatus_HighThreshold , 0x2d82, 0x0000 }, { ColourEngine0_ApertureCorrectionStatus_CoringThreshold , 0x2d84, 0x0000 }, + +// page "ColourEngine0_GammaCorrection" +// + /* + { ColourEngine0_GammaCorrection_fEnabled , 0x2e00 ,0x0000}, + { ColourEngine0_GammaCorrection_bMode , 0x2e02 ,0x0000}, + { ColourEngine0_GammaCorrection_SharpRed , 0x2e04 ,0x0000}, + { ColourEngine0_GammaCorrection_SharpGreen , 0x2e06 ,0x0000}, + { ColourEngine0_GammaCorrection_SharpBlue , 0x2e08 ,0x0000}, + { ColourEngine0_GammaCorrection_SoftRed , 0x2e0a ,0x0000}, + { ColourEngine0_GammaCorrection_SoftGreen , 0x2e0c ,0x0000}, + { ColourEngine0_GammaCorrection_SoftBlue , 0x2e0e ,0x0000}, +*/ { ColourEngine0_GammaCorrection_fEnabled , 0x2e00, 0x0001 }, { ColourEngine0_GammaCorrection_bMode , 0x2e02, 0x0001 }, { ColourEngine0_GammaCorrection_SharpRed , 0x2e04, 0x0013 }, { ColourEngine0_GammaCorrection_SharpGreen , 0x2e06, 0x0013 }, { ColourEngine0_GammaCorrection_SharpBlue , 0x2e08, 0x0013 }, { ColourEngine0_GammaCorrection_SoftRed , 0x2e0a, 0x0013 }, { ColourEngine0_GammaCorrection_SoftGreen , 0x2e0c, 0x0013 }, { ColourEngine0_GammaCorrection_SoftBlue , 0x2e0e, 0x0013 }, +// page "NoraControls" +// + /* + { NoraControls_fDisable , 0x2e80 ,0x00}, + { NoraControls_fDisableNoraPromoting , 0x2e82 ,0x1}, + { NoraControls_bMaximumValue , 0x2e84 ,0x0}, + { NoraControls_fDifferentTextureDegreeForBlue , 0x2e86 ,0x0000}, + { NoraControls_fSplitNoiseLevel , 0x2e88 ,0x0000}, + { NoraControls_fTightGreenMatrix , 0x2e8a ,0x0000}, + { NoraControls_DamperLowThreshold_LSByte , 0x2e8e ,0x0000}, + { NoraControls_DamperLowThreshold_MSByte , 0x2e8d ,0x0000}, + { NoraControls_DamperHighThreshold_LSByte , 0x2e92 ,0x0000}, + { NoraControls_DamperHighThreshold_MSByte , 0x2e91 ,0x0000}, + { NoraControls_MinimumDamperOutput_LSByte , 0x2e96 ,0x0000}, + { NoraControls_MinimumDamperOutput_MSByte , 0x2e95 ,0x0000}, + */ { NoraControls_fDisable , 0x2e80, 0x0001 }, { NoraControls_fDisableNoraPromoting , 0x2e82, 0x0000 }, { NoraControls_bMaximumValue , 0x2e84, 0x0001 }, { NoraControls_fDifferentTextureDegreeForBlue , 0x2e86, 0x0000 }, { NoraControls_fSplitNoiseLevel , 0x2e88, 0x0000 }, @@ -4124,11 +5766,37 @@ struct nomadik_vpip_param vpip_default_p { NoraControls_DamperLowThreshold_MSByte , 0x2e8d, 0x4000 }, { NoraControls_DamperHighThreshold_LSByte , 0x2e92, 0x0000 }, { NoraControls_DamperHighThreshold_MSByte , 0x2e91, 0x4500 }, { NoraControls_MinimumDamperOutput_LSByte , 0x2e96, 0x0000 }, { NoraControls_MinimumDamperOutput_MSByte , 0x2e95, 0x0000 }, + +// page "NoraStatus" [read only] +// { NoraStatus_bNoraValue , 0x2f00, 0x0000 }, + +// page "ScytheFilterControls" +// + /* + { ScytheFilterControls_fDisableFilter , 0x2f80 ,0x0}, + { ScytheFilterControls_fSquareLaw , 0x2f82 ,0x0}, + { ScytheFilterControls_fDisablePromotingLow , 0x2f84 ,0x1}, + { ScytheFilterControls_fDisablePromotingHigh , 0x2f86 ,0x1}, + { ScytheFilterControls_bMaxWeightLow , 0x2f88 ,0x16}, + { ScytheFilterControls_bMaxWeightHigh , 0x2f8a ,0x16}, + { ScytheFilterControls_fpDamperLowThresholdLow_LSByte , 0x2f8e ,0x0000}, + { ScytheFilterControls_fpDamperLowThresholdLow_MSByte , 0x2f8d ,0x0000}, + { ScytheFilterControls_fpDamperLowThresholdHigh_LSByte , 0x2f92 ,0x0000}, + { ScytheFilterControls_fpDamperLowThresholdHigh_MSByte , 0x2f91 ,0x0000}, + { ScytheFilterControls_fpDamperHighThresholdLow_LSByte , 0x2f96 ,0x0000}, + { ScytheFilterControls_fpDamperHighThresholdLow_MSByte , 0x2f95 ,0x0000}, + { ScytheFilterControls_fpDamperHighThresholdHigh_LSByte , 0x2f9a ,0x0000}, + { ScytheFilterControls_fpDamperHighThresholdHigh_MSByte , 0x2f99 ,0x0000}, + { ScytheFilterControls_fpMinimumDamperOutputLow_LSByte , 0x2f9e ,0x0000}, + { ScytheFilterControls_fpMinimumDamperOutputLow_MSByte , 0x2f9d ,0x0000}, + { ScytheFilterControls_fpMinimumDamperOutputHigh_LSByte , 0x2fa2 ,0x0000}, + { ScytheFilterControls_fpMinimumDamperOutputHigh_MSByte , 0x2fa1 ,0x0000}, + */ { ScytheFilterControls_fDisableFilter , 0x2f80, 0x0000 }, { ScytheFilterControls_fSquareLaw , 0x2f82, 0x0000 }, { ScytheFilterControls_fDisablePromotingLow , 0x2f84, 0x0000 }, { ScytheFilterControls_fDisablePromotingHigh , 0x2f86, 0x0000 }, { ScytheFilterControls_bMaxWeightLow , 0x2f88, 0x0010 }, @@ -4143,10 +5811,33 @@ struct nomadik_vpip_param vpip_default_p { ScytheFilterControls_fpDamperHighThresholdHigh_MSByte , 0x2f99, 0x68dc }, { ScytheFilterControls_fpMinimumDamperOutputLow_LSByte , 0x2f9e, 0x0000 }, { ScytheFilterControls_fpMinimumDamperOutputLow_MSByte , 0x2f9d, 0x3a00 }, { ScytheFilterControls_fpMinimumDamperOutputHigh_LSByte , 0x2fa2, 0x0000 }, { ScytheFilterControls_fpMinimumDamperOutputHigh_MSByte , 0x2fa1, 0x3a00 }, + +// page "JackFilterControls" +// + /* + { JackFilterControls_fDisableFilter , 0x3000 ,0x0000 }, + { JackFilterControls_fSquareLaw , 0x3002 ,0x0000 }, + { JackFilterControls_fDisablePromotingLow , 0x3004 ,0x0000 }, + { JackFilterControls_fDisablePromotingHigh , 0x3006 ,0x0000 }, + { JackFilterControls_bMaxWeightLow , 0x3008 ,0x0010 }, + { JackFilterControls_bMaxWeightHigh , 0x300a ,0x0010 }, + { JackFilterControls_fpDamperLowThresholdLow_LSByte , 0x300e ,0x0000 }, + { JackFilterControls_fpDamperLowThresholdLow_MSByte , 0x300d ,0x63d1 }, + { JackFilterControls_fpDamperLowThresholdHigh_LSByte , 0x3012 ,0x0000 }, + { JackFilterControls_fpDamperLowThresholdHigh_MSByte , 0x3011 ,0x63d1 }, + { JackFilterControls_fpDamperHighThresholdLow_LSByte , 0x3016 ,0x0000 }, + { JackFilterControls_fpDamperHighThresholdLow_MSByte , 0x3015 ,0x68dc }, + { JackFilterControls_fpDamperHighThresholdHigh_LSByte , 0x301a ,0x0000 }, + { JackFilterControls_fpDamperHighThresholdHigh_MSByte , 0x3019 ,0x68dc }, + { JackFilterControls_fpMinimumDamperOutputLow_LSByte , 0x301e ,0x0000 }, + { JackFilterControls_fpMinimumDamperOutputLow_MSByte , 0x301d ,0x0000 }, + { JackFilterControls_fpMinimumDamperOutputHigh_LSByte , 0x3022 ,0x0000 }, + { JackFilterControls_fpMinimumDamperOutputHigh_MSByte , 0x3021 ,0x0000 }, + */ { JackFilterControls_fDisableFilter , 0x3000, 0x0000 }, { JackFilterControls_fSquareLaw , 0x3002, 0x0000 }, { JackFilterControls_fDisablePromotingLow , 0x3004, 0x0000 }, { JackFilterControls_fDisablePromotingHigh , 0x3006, 0x0000 }, { JackFilterControls_bMaxWeightLow , 0x3008, 0x0010 }, @@ -4161,103 +5852,208 @@ struct nomadik_vpip_param vpip_default_p { JackFilterControls_fpDamperHighThresholdHigh_MSByte , 0x3019, 0x68dc }, { JackFilterControls_fpMinimumDamperOutputLow_LSByte , 0x301e, 0x0000 }, { JackFilterControls_fpMinimumDamperOutputLow_MSByte , 0x301d, 0x0000 }, { JackFilterControls_fpMinimumDamperOutputHigh_LSByte , 0x3022, 0x0000 }, { JackFilterControls_fpMinimumDamperOutputHigh_MSByte , 0x3021, 0x0000 }, + +// page "ScytheAndJackFilterStatus" [read only] +// { ScytheAndJackFilterStatus_bScytheWeightLo , 0x3080, 0x0000 }, { ScytheAndJackFilterStatus_bScytheWeightHi , 0x3082, 0x0000 }, { ScytheAndJackFilterStatus_bJackWeightLo , 0x3084, 0x0000 }, { ScytheAndJackFilterStatus_bJackWeightHi , 0x3086, 0x0000 }, + +// page "VfpnControls" +// + /* + { VfpnControls_fEnableCorrection , 0x3100,0x0000},//tobe hardcoded + { VfpnControls_uwMaximumPixelValue_LSByte , 0x3104,0x0000}, + { VfpnControls_uwMaximumPixelValue_MSByte , 0x3103,0x3ff}, + { VfpnControls_uwMinimumPixelValue_LSByte , 0x3108,0x0000}, + { VfpnControls_uwMinimumPixelValue_MSByte , 0x3107,0x00}, + { VfpnControls_uwPixelSaturationLevel_LSByte , 0x310c,0x0000}, + { VfpnControls_uwPixelSaturationLevel_MSByte , 0x310b,0x3ff}, + { VfpnControls_bLogThreshLog , 0x310e,0x4}, */ { VfpnControls_fEnableCorrection , 0x3100, 0x0000 }, { VfpnControls_uwMaximumPixelValue_LSByte , 0x3104, 0x0000 }, { VfpnControls_uwMaximumPixelValue_MSByte , 0x3103, 0x03ff }, { VfpnControls_uwMinimumPixelValue_LSByte , 0x3108, 0x0000 }, { VfpnControls_uwMinimumPixelValue_MSByte , 0x3107, 0x0000 }, { VfpnControls_uwPixelSaturationLevel_LSByte , 0x310c, 0x0000 }, { VfpnControls_uwPixelSaturationLevel_MSByte , 0x310b, 0x03ff }, { VfpnControls_bLogThreshLog , 0x310e, 0x0004 }, + +// page "VfpnStatus" [read only] +// { VfpnStatus_fLowPowerStreaming , 0x3180, 0x0000 }, { VfpnStatus_fVfpnGainChanged , 0x3182, 0x0000 }, { VfpnStatus_bNumberOfBlackLines , 0x3184, 0x0000 }, { VfpnStatus_uwNumberOfActivePixels_LSByte , 0x3188, 0x0000 }, { VfpnStatus_uwNumberOfActivePixels_MSByte , 0x3187, 0x0000 }, -{ AntiVignetteControls_fDisableFilter , 0x3200, 0x0000 }, + +// page "AntiVignetteControls" +// + + { AntiVignetteControls_fDisableFilter , 0x3200 ,0x0000 }, // 0x00 + { AntiVignetteControls_bFilterCoeff_R2_r , 0x3202 ,0x0000 }, // 0x0000 + { AntiVignetteControls_bFilterCoeff_R2_gr , 0x3204 ,0x0080 }, // 0x0000 + { AntiVignetteControls_bFilterCoeff_R2_gb , 0x3206 ,0x0080 }, // 0x0000 + { AntiVignetteControls_bFilterCoeff_R2_b , 0x3208 ,0x0000 }, // 0x0000 + { AntiVignetteControls_bFilterCoeff_R4_r , 0x320a ,0x0000 }, // 0x0000 + { AntiVignetteControls_bFilterCoeff_R4_gr , 0x320c ,0x0000 }, // 0x0000 + { AntiVignetteControls_bFilterCoeff_R4_gb , 0x320e ,0x0000 }, // 0x0000 + { AntiVignetteControls_bFilterCoeff_R4_b , 0x3210 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwHorizontalOffset_LSByte , 0x3214 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwHorizontalOffset_MSByte , 0x3213 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwVerticalOffset_LSByte , 0x3218 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwVerticalOffset_MSByte , 0x3217 ,0x0000 }, // 0x0000 + { AntiVignetteControls_fAVOffsetSeperateFor4Channels , 0x321a ,0x0001 }, // 0x0000 + { AntiVignetteControls_bShiftFix_R2 , 0x321c ,0x0012 }, // 0x0000 + { AntiVignetteControls_uwHorizontalOffset_r_LSByte , 0x3220 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwHorizontalOffset_r_MSByte , 0x321f ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwHorizontalOffset_gr_LSByte , 0x3224 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwHorizontalOffset_gr_MSByte , 0x3223 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwHorizontalOffset_gb_LSByte , 0x3228 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwHorizontalOffset_gb_MSByte , 0x3227 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwHorizontalOffset_b_LSByte , 0x322c ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwHorizontalOffset_b_MSByte , 0x322b ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwVerticalOffset_r_LSByte , 0x3230 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwVerticalOffset_r_MSByte , 0x322f ,0x002f }, // 0x0000 + { AntiVignetteControls_uwVerticalOffset_gr_LSByte , 0x3234 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwVerticalOffset_gr_MSByte , 0x3233 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwVerticalOffset_gb_LSByte , 0x3238 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwVerticalOffset_gb_MSByte , 0x3237 ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwVerticalOffset_b_LSByte , 0x323c ,0x0000 }, // 0x0000 + { AntiVignetteControls_uwVerticalOffset_b_MSByte , 0x323b ,0x0000 }, // 0x0000 + { AntiVignetteControls_bUnityOffset_r , 0x323e ,0x0040 }, // 0x0000 + { AntiVignetteControls_bUnityOffset_gr , 0x3240 ,0x0040 }, // 0x0000 + { AntiVignetteControls_bUnityOffset_gb , 0x3242 ,0x0040 }, // 0x0000 + { AntiVignetteControls_bUnityOffset_b , 0x3244 ,0x0040 }, // 0x0000 + { AntiVignetteControls_fAdaptiveAntiVignetteEnable , 0x3246 ,0x0001 }, // 0x0000 + + + /* + { AntiVignetteControls_fDisableFilter , 0x3200 ,0x00}, { AntiVignetteControls_bFilterCoeff_R2_r , 0x3202, 0x0000 }, -{ AntiVignetteControls_bFilterCoeff_R2_gr , 0x3204, 0x0080 }, -{ AntiVignetteControls_bFilterCoeff_R2_gb , 0x3206, 0x0080 }, + { AntiVignetteControls_bFilterCoeff_R2_gr , 0x3204 ,0x0000}, + { AntiVignetteControls_bFilterCoeff_R2_gb , 0x3206 ,0x0000}, { AntiVignetteControls_bFilterCoeff_R2_b , 0x3208, 0x0000 }, { AntiVignetteControls_bFilterCoeff_R4_r , 0x320a, 0x0000 }, { AntiVignetteControls_bFilterCoeff_R4_gr , 0x320c, 0x0000 }, { AntiVignetteControls_bFilterCoeff_R4_gb , 0x320e, 0x0000 }, { AntiVignetteControls_bFilterCoeff_R4_b , 0x3210, 0x0000 }, { AntiVignetteControls_uwHorizontalOffset_LSByte , 0x3214, 0x0000 }, { AntiVignetteControls_uwHorizontalOffset_MSByte , 0x3213, 0x0000 }, { AntiVignetteControls_uwVerticalOffset_LSByte , 0x3218, 0x0000 }, { AntiVignetteControls_uwVerticalOffset_MSByte , 0x3217, 0x0000 }, -{ AntiVignetteControls_fAVOffsetSeperateFor4Channels , 0x321a, 0x0001 }, -{ AntiVignetteControls_bShiftFix_R2 , 0x321c, 0x0012 }, + { AntiVignetteControls_fAVOffsetSeperateFor4Channels , 0x321a ,0x0000}, + { AntiVignetteControls_bShiftFix_R2 , 0x321c ,0x0000}, { AntiVignetteControls_uwHorizontalOffset_r_LSByte , 0x3220, 0x0000 }, { AntiVignetteControls_uwHorizontalOffset_r_MSByte , 0x321f, 0x0000 }, { AntiVignetteControls_uwHorizontalOffset_gr_LSByte , 0x3224, 0x0000 }, { AntiVignetteControls_uwHorizontalOffset_gr_MSByte , 0x3223, 0x0000 }, { AntiVignetteControls_uwHorizontalOffset_gb_LSByte , 0x3228, 0x0000 }, { AntiVignetteControls_uwHorizontalOffset_gb_MSByte , 0x3227, 0x0000 }, { AntiVignetteControls_uwHorizontalOffset_b_LSByte , 0x322c, 0x0000 }, { AntiVignetteControls_uwHorizontalOffset_b_MSByte , 0x322b, 0x0000 }, { AntiVignetteControls_uwVerticalOffset_r_LSByte , 0x3230, 0x0000 }, -{ AntiVignetteControls_uwVerticalOffset_r_MSByte , 0x3200, 0x002f }, + { AntiVignetteControls_uwVerticalOffset_r_MSByte , 0x322f ,0x0000}, { AntiVignetteControls_uwVerticalOffset_gr_LSByte , 0x3234, 0x0000 }, { AntiVignetteControls_uwVerticalOffset_gr_MSByte , 0x3233, 0x0000 }, { AntiVignetteControls_uwVerticalOffset_gb_LSByte , 0x3238, 0x0000 }, { AntiVignetteControls_uwVerticalOffset_gb_MSByte , 0x3237, 0x0000 }, { AntiVignetteControls_uwVerticalOffset_b_LSByte , 0x323c, 0x0000 }, { AntiVignetteControls_uwVerticalOffset_b_MSByte , 0x323b, 0x0000 }, -{ AntiVignetteControls_bUnityOffset_r , 0x323e, 0x0040 }, -{ AntiVignetteControls_bUnityOffset_gr , 0x3240, 0x0040 }, -{ AntiVignetteControls_bUnityOffset_gb , 0x3242, 0x0040 }, -{ AntiVignetteControls_bUnityOffset_b , 0x3244, 0x0040 }, -{ AntiVignetteControls_fAdaptiveAntiVignetteEnable , 0x3246, 0x0001 }, + { AntiVignetteControls_bUnityOffset_r , 0x323e ,0x0000}, + { AntiVignetteControls_bUnityOffset_gr , 0x3240 ,0x0000}, + { AntiVignetteControls_bUnityOffset_gb , 0x3242 ,0x0000}, + { AntiVignetteControls_bUnityOffset_b , 0x3244 ,0x0000}, + { AntiVignetteControls_fAdaptiveAntiVignetteEnable , 0x3246 ,0x0000}, + */ + +// page "AntiVignetteStatus" [read only] +// { AntiVignetteStatus_fXScaleEnabled , 0x3280, 0x0000 }, { AntiVignetteStatus_bXScale , 0x3282, 0x0000 }, { AntiVignetteStatus_fYScaleEnabled , 0x3284, 0x0000 }, { AntiVignetteStatus_bYScale , 0x3286, 0x0000 }, { AntiVignetteStatus_uwHorizontalSize_LSByte , 0x328a, 0x0000 }, { AntiVignetteStatus_uwHorizontalSize_MSByte , 0x3289, 0x0000 }, { AntiVignetteStatus_uwVerticalSize_LSByte , 0x328e, 0x0000 }, { AntiVignetteStatus_uwVerticalSize_MSByte , 0x328d, 0x0000 }, -{ ColourEngine0_RadialApertureCorrectionControl_fEnableCorrection , 0x3300, 0x0000 }, + +// page "ColourEngine0_RadialApertureCorrectionControl" +// + + { ColourEngine0_RadialApertureCorrectionControl_fEnableCorrection , 0x3300 ,0x1}, + +// page "ColourEngine0_RadialApertureCorrectionHostInputs" +// + + { ColourEngine0_RadialApertureCorrectionHostInputs_bQvec0 , 0x3380 ,0x0000}, + { ColourEngine0_RadialApertureCorrectionHostInputs_bQvec1 , 0x3382 ,0x0000}, + { ColourEngine0_RadialApertureCorrectionHostInputs_bCofShift , 0x3384 ,0x0000}, + { ColourEngine0_RadialApertureCorrectionHostInputs_bOutShift , 0x3386 ,0x0000}, + { ColourEngine0_RadialApertureCorrectionHostInputs_uwUnity_LSByte , 0x338a ,0x0000}, + { ColourEngine0_RadialApertureCorrectionHostInputs_uwUnity_MSByte , 0x3389 ,0x0000}, + + //{ ColourEngine0_RadialApertureCorrectionControl_fEnableCorrection , 0x3300, 0x0000 }, + +/* { ColourEngine0_RadialApertureCorrectionHostInputs_bQvec0 , 0x3380, 0x0010 }, { ColourEngine0_RadialApertureCorrectionHostInputs_bQvec1 , 0x3382, 0x003f }, { ColourEngine0_RadialApertureCorrectionHostInputs_bCofShift , 0x3384, 0x0000 }, { ColourEngine0_RadialApertureCorrectionHostInputs_bOutShift , 0x3386, 0x0003 }, { ColourEngine0_RadialApertureCorrectionHostInputs_uwUnity_LSByte , 0x338a, 0x0000 }, { ColourEngine0_RadialApertureCorrectionHostInputs_uwUnity_MSByte , 0x3389, 0x0001 }, +*/ + +// page "ColourEngine0_RadialApertureCorrectionApplicationInputs" [read only] +// { ColourEngine0_RadialApertureCorrectionApplicationInputs_uwHOffset_LSByte , 0x3402, 0x0000 }, { ColourEngine0_RadialApertureCorrectionApplicationInputs_uwHOffset_MSByte , 0x3401, 0x0000 }, { ColourEngine0_RadialApertureCorrectionApplicationInputs_uwVOffset_LSByte , 0x3406, 0x0000 }, { ColourEngine0_RadialApertureCorrectionApplicationInputs_uwVOffset_MSByte , 0x3405, 0x0000 }, { ColourEngine0_RadialApertureCorrectionApplicationInputs_uwHScalingFactor_LSByte , 0x340a, 0x0000 }, { ColourEngine0_RadialApertureCorrectionApplicationInputs_uwHScalingFactor_MSByte , 0x3409, 0x0000 }, { ColourEngine0_RadialApertureCorrectionApplicationInputs_uwVScalingFactor_LSByte , 0x340e, 0x0000 }, { ColourEngine0_RadialApertureCorrectionApplicationInputs_uwVScalingFactor_MSByte , 0x340d, 0x0000 }, + +// page "ColourEngine0_OutputCoderControls" +// + { ColourEngine0_OutputCoderControls_TransformType , 0x3480, 0x00}, + { ColourEngine0_OutputCoderControls_bContrast , 0x3482, 0x64}, + { ColourEngine0_OutputCoderControls_bColourSaturation , 0x3484, 0x64}, + +/* { ColourEngine0_OutputCoderControls_TransformType , 0x3480, 0x0001 }, { ColourEngine0_OutputCoderControls_bContrast , 0x3482, 0x0064 }, { ColourEngine0_OutputCoderControls_bColourSaturation , 0x3484, 0x0069 }, +*/ + +// page "ColourEngine0_CoderOutputSignalRange" +// { ColourEngine0_CoderOutputSignalRange_uwLumaExcursion_LSByte , 0x3502, 0x0000 }, { ColourEngine0_CoderOutputSignalRange_uwLumaExcursion_MSByte , 0x3501, 0x0000 }, { ColourEngine0_CoderOutputSignalRange_uwLumaMidpointTimes2_LSByte , 0x3506, 0x0000 }, { ColourEngine0_CoderOutputSignalRange_uwLumaMidpointTimes2_MSByte , 0x3505, 0x0000 }, { ColourEngine0_CoderOutputSignalRange_uwChromaExcursion_LSByte , 0x350a, 0x0000 }, { ColourEngine0_CoderOutputSignalRange_uwChromaExcursion_MSByte , 0x3509, 0x0000 }, { ColourEngine0_CoderOutputSignalRange_uwChromaMidpointTimes2_LSByte , 0x350e, 0x0000 }, { ColourEngine0_CoderOutputSignalRange_uwChromaMidpointTimes2_MSByte , 0x350d, 0x0000 }, + +// page "ColourEngine0_OutputCoderOffsetVector" [read only] +// { ColourEngine0_OutputCoderOffsetVector_i0_LSByte , 0x3582, 0x0000 }, { ColourEngine0_OutputCoderOffsetVector_i0_MSByte , 0x3581, 0x0000 }, { ColourEngine0_OutputCoderOffsetVector_i1_LSByte , 0x3586, 0x0000 }, { ColourEngine0_OutputCoderOffsetVector_i1_MSByte , 0x3585, 0x0000 }, { ColourEngine0_OutputCoderOffsetVector_i2_LSByte , 0x358a, 0x0000 }, { ColourEngine0_OutputCoderOffsetVector_i2_MSByte , 0x3589, 0x0000 }, + +// page "ColourEngine0_OutputCoderMatrix" [read only] +// { ColourEngine0_OutputCoderMatrix_w0_0_LSByte , 0x3602, 0x0000 }, { ColourEngine0_OutputCoderMatrix_w0_0_MSByte , 0x3601, 0x0000 }, { ColourEngine0_OutputCoderMatrix_w0_1_LSByte , 0x3606, 0x0000 }, { ColourEngine0_OutputCoderMatrix_w0_1_MSByte , 0x3605, 0x0000 }, { ColourEngine0_OutputCoderMatrix_w0_2_LSByte , 0x360a, 0x0000 }, @@ -4272,37 +6068,91 @@ struct nomadik_vpip_param vpip_default_p { ColourEngine0_OutputCoderMatrix_w2_0_MSByte , 0x3619, 0x0000 }, { ColourEngine0_OutputCoderMatrix_w2_1_LSByte , 0x361e, 0x0000 }, { ColourEngine0_OutputCoderMatrix_w2_1_MSByte , 0x361d, 0x0000 }, { ColourEngine0_OutputCoderMatrix_w2_2_LSByte , 0x3622, 0x0000 }, { ColourEngine0_OutputCoderMatrix_w2_2_MSByte , 0x3621, 0x0000 }, + +// page "ColourEngine0_FadeToBlack" +// + { ColourEngine0_FadeToBlack_fDisable , 0x3680 ,0x1}, + { ColourEngine0_FadeToBlack_fpBlackValue_LSByte , 0x3684 ,0x0}, + { ColourEngine0_FadeToBlack_fpBlackValue_MSByte , 0x3683 ,0x0}, + { ColourEngine0_FadeToBlack_fpDamperLowThreshold_LSByte , 0x3688 ,0x0}, + { ColourEngine0_FadeToBlack_fpDamperLowThreshold_MSByte , 0x3687 ,0x0}, + { ColourEngine0_FadeToBlack_fpDamperHighThreshold_LSByte , 0x368c,0x0}, + { ColourEngine0_FadeToBlack_fpDamperHighThreshold_MSByte , 0x368b,0x0}, + { ColourEngine0_FadeToBlack_fpDamperOutput_LSByte , 0x3690 ,0x0}, + { ColourEngine0_FadeToBlack_fpDamperOutput_MSByte , 0x368f ,0x0}, + +/* { ColourEngine0_FadeToBlack_fDisable , 0x3680, 0x0001 }, { ColourEngine0_FadeToBlack_fpBlackValue_LSByte , 0x3684, 0x0000 }, { ColourEngine0_FadeToBlack_fpBlackValue_MSByte , 0x3683, 0x0000 }, { ColourEngine0_FadeToBlack_fpDamperLowThreshold_LSByte , 0x3688, 0x0000 }, { ColourEngine0_FadeToBlack_fpDamperLowThreshold_MSByte , 0x3687, 0x63d1 }, { ColourEngine0_FadeToBlack_fpDamperHighThreshold_LSByte , 0x368c, 0x0000 }, { ColourEngine0_FadeToBlack_fpDamperHighThreshold_MSByte , 0x368b, 0x656f }, { ColourEngine0_FadeToBlack_fpDamperOutput_LSByte , 0x3690, 0x0000 }, { ColourEngine0_FadeToBlack_fpDamperOutput_MSByte , 0x368f, 0x0000 }, +*/ + +// page "ScalerLimits" [mode static] +// { ScalerLimits_uwPipe0MinStep_LSByte , 0x3702, 0x0000 }, { ScalerLimits_uwPipe0MinStep_MSByte , 0x3701, 0x0000 }, { ScalerLimits_uwPipe0MaxStep_LSByte , 0x3706, 0x0000 }, { ScalerLimits_uwPipe0MaxStep_MSByte , 0x3705, 0x0000 }, + +// page "ZoomMgrParams" [mode static] +// +/* + { ZoomMgrParams_fAntiZip , 0x3780 ,0x0000}, + { ZoomMgrParams_bFilterCrispness0 , 0x3782 ,0x0000}, + { ZoomMgrParams_bFilterCrispness1 , 0x3784 ,0x0000}, + { ZoomMgrParams_fInFromOutARLock , 0x3786 ,0x0000}, + { ZoomMgrParams_bPrescaleFactor , 0x3788 ,0x00}, + { ZoomMgrParams_bPrescaleType , 0x378a ,0x00}, + { ZoomMgrParams_fp16ZoomRange_LSByte , 0x378e ,0x0000}, + { ZoomMgrParams_fp16ZoomRange_MSByte , 0x378d ,0x0000}, + +// page "ZoomMgrCtrl" +// + { ZoomMgrCtrl_bHostTestCoin , 0x3800,0x01}, + { ZoomMgrCtrl_bZoomCmd , 0x3802,0x00}, + { ZoomMgrCtrl_fChgOverForbidden , 0x3804,0x00}, + { ZoomMgrCtrl_fAutoZoom , 0x3806,0x00}, + { ZoomMgrCtrl_bStepFramePeriod , 0x3808,0x00}, + { ZoomMgrCtrl_bMagFactor , 0x380a,0x0014},//0x0a, + { ZoomMgrCtrl_bChgOverMarginShift , 0x380c,0x00}, + { ZoomMgrCtrl_fCheckDataRate , 0x380e,0x00}, + { ZoomMgrCtrl_fSetAlternateInitWOI , 0x3810,0x00}, + { ZoomMgrCtrl_fSetX_Byte0 , 0x3812,0x00}, + { ZoomMgrCtrl_fSetX_Byte1 , 0x3814,0x00}, + { ZoomMgrCtrl_fSetX_Byte2 , 0x3816,0x00}, + { ZoomMgrCtrl_fSetX_Byte3 , 0x3818,0x00}, + { ZoomMgrCtrl_fp16P0ScaleLowLimit_LSByte , 0x381c,0x00}, + { ZoomMgrCtrl_fp16P0ScaleLowLimit_MSByte , 0x381b,0x00}, + { ZoomMgrCtrl_fp16P1ScaleLowLimit_LSByte , 0x3820,0x00}, + { ZoomMgrCtrl_fp16P1ScaleLowLimit_MSByte , 0x381f,0x00}, +*/ + { ZoomMgrParams_fAntiZip , 0x3780, 0x0000 }, { ZoomMgrParams_bFilterCrispness0 , 0x3782, 0x0000 }, { ZoomMgrParams_bFilterCrispness1 , 0x3784, 0x0000 }, { ZoomMgrParams_fInFromOutARLock , 0x3786, 0x0000 }, { ZoomMgrParams_bPrescaleFactor , 0x3788, 0x0000 }, { ZoomMgrParams_bPrescaleType , 0x378a, 0x0000 }, { ZoomMgrParams_fp16ZoomRange_LSByte , 0x378e, 0x0000 }, { ZoomMgrParams_fp16ZoomRange_MSByte , 0x378d, 0x100 }, + + { ZoomMgrCtrl_bHostTestCoin , 0x3800, 0x0001 }, { ZoomMgrCtrl_bZoomCmd , 0x3802, 0x0000 }, { ZoomMgrCtrl_fChgOverForbidden , 0x3804, 0x0000 }, { ZoomMgrCtrl_fAutoZoom , 0x3806, 0x0000 }, { ZoomMgrCtrl_bStepFramePeriod , 0x3808, 0x0000 }, -{ ZoomMgrCtrl_bMagFactor , 0x380a, 0x0014},//0x000a }, +{ ZoomMgrCtrl_bMagFactor , 0x380a, 0x0014},//0x000a { ZoomMgrCtrl_bChgOverMarginShift , 0x380c, 0x0000 }, { ZoomMgrCtrl_fCheckDataRate , 0x380e, 0x0000 }, { ZoomMgrCtrl_fSetAlternateInitWOI , 0x3810, 0x0000 }, { ZoomMgrCtrl_fSetX_Byte0 , 0x3812, 0x0000 }, { ZoomMgrCtrl_fSetX_Byte1 , 0x3814, 0x0000 }, @@ -4310,10 +6160,13 @@ struct nomadik_vpip_param vpip_default_p { ZoomMgrCtrl_fSetX_Byte3 , 0x3818, 0x0000 }, { ZoomMgrCtrl_fp16P0ScaleLowLimit_LSByte , 0x381c, 0x0000 }, { ZoomMgrCtrl_fp16P0ScaleLowLimit_MSByte , 0x381b, 0x0000 }, { ZoomMgrCtrl_fp16P1ScaleLowLimit_LSByte , 0x3820, 0x0000 }, { ZoomMgrCtrl_fp16P1ScaleLowLimit_MSByte , 0x381f, 0x0000 }, + +// page "ZoomMgrStatus" [read only] +// { ZoomMgrStatus_fReady , 0x3880, 0x0000 }, { ZoomMgrStatus_bDeviceTestCoin , 0x3882, 0x0000 }, { ZoomMgrStatus_bNextCmd , 0x3884, 0x0000 }, { ZoomMgrStatus_bLastCmd , 0x3886, 0x0000 }, { ZoomMgrStatus_bCommandStatus , 0x3888, 0x0000 }, @@ -4343,10 +6196,28 @@ struct nomadik_vpip_param vpip_default_p { ZoomMgrStatus_fMinFOVX_Byte3 , 0x38b8, 0x0000 }, { ZoomMgrStatus_uwXOrigin_LSByte , 0x38bc, 0x0000 }, { ZoomMgrStatus_uwXOrigin_MSByte , 0x38bb, 0x0000 }, { ZoomMgrStatus_uwYOrigin_LSByte , 0x38c0, 0x0000 }, { ZoomMgrStatus_uwYOrigin_MSByte , 0x38bf, 0x0000 }, + +// page "WhiteBalanceConstrainerControls" +// + + { WhiteBalanceConstrainerControls_fpRedA_LSByte , 0x3902 ,0x0000}, + { WhiteBalanceConstrainerControls_fpRedA_MSByte , 0x3901 ,0x0000}, + { WhiteBalanceConstrainerControls_fpBlueA_LSByte , 0x3906 ,0x0000}, + { WhiteBalanceConstrainerControls_fpBlueA_MSByte , 0x3905 ,0x0000}, + { WhiteBalanceConstrainerControls_fpRedB_LSByte , 0x390a ,0x0000}, + { WhiteBalanceConstrainerControls_fpRedB_MSByte , 0x3909 ,0x0000}, + { WhiteBalanceConstrainerControls_fpBlueB_LSByte , 0x390e ,0x0000}, + { WhiteBalanceConstrainerControls_fpBlueB_MSByte , 0x390d ,0x0000}, + { WhiteBalanceConstrainerControls_fpMaximumDistanceAllowedFromLocus_LSByte , 0x3912 ,0x0000}, + { WhiteBalanceConstrainerControls_fpMaximumDistanceAllowedFromLocus_MSByte , 0x3911 ,0x0000}, + { WhiteBalanceConstrainerControls_fEnableConstrainedWhiteBalance , 0x3914 ,0x0000}, + + +/* { WhiteBalanceConstrainerControls_fpRedA_LSByte , 0x3902, 0x0000 }, { WhiteBalanceConstrainerControls_fpRedA_MSByte , 0x3901, 0x0000 }, { WhiteBalanceConstrainerControls_fpBlueA_LSByte , 0x3906, 0x0000 }, { WhiteBalanceConstrainerControls_fpBlueA_MSByte , 0x3905, 0x0000 }, { WhiteBalanceConstrainerControls_fpRedB_LSByte , 0x390a, 0x0000 }, @@ -4354,25 +6225,34 @@ struct nomadik_vpip_param vpip_default_p { WhiteBalanceConstrainerControls_fpBlueB_LSByte , 0x390e, 0x0000 }, { WhiteBalanceConstrainerControls_fpBlueB_MSByte , 0x390d, 0x3acf }, { WhiteBalanceConstrainerControls_fpMaximumDistanceAllowedFromLocus_LSByte , 0x3912, 0x0000 }, { WhiteBalanceConstrainerControls_fpMaximumDistanceAllowedFromLocus_MSByte , 0x3911, 0x2e8e }, { WhiteBalanceConstrainerControls_fEnableConstrainedWhiteBalance , 0x3914, 0x0001 }, +*/ +// page "WhiteBalanceConstrainerOutput" [read only] +// { WhiteBalanceConstrainerOutput_fpOutputRedGain_LSByte , 0x3982, 0x0000 }, { WhiteBalanceConstrainerOutput_fpOutputRedGain_MSByte , 0x3981, 0x0000 }, { WhiteBalanceConstrainerOutput_fpOutputGreenGain_LSByte , 0x3986, 0x0000 }, { WhiteBalanceConstrainerOutput_fpOutputGreenGain_MSByte , 0x3985, 0x0000 }, { WhiteBalanceConstrainerOutput_fpOutputBlueGain_LSByte , 0x398a, 0x0000 }, { WhiteBalanceConstrainerOutput_fpOutputBlueGain_MSByte , 0x3989, 0x0000 }, { WhiteBalanceConstrainerOutput_fAreGainsConstrained , 0x398c, 0x0000 }, + +// page "WhiteBalanceConstrainerInternal" [read only] +// { WhiteBalanceConstrainerInternal_fpGradientOfLocusAB_LSByte , 0x3a02, 0x0000 }, { WhiteBalanceConstrainerInternal_fpGradientOfLocusAB_MSByte , 0x3a01, 0x0000 }, { WhiteBalanceConstrainerInternal_fpDistanceOfInputPointFromLocusAB_LSByte , 0x3a06, 0x0000 }, { WhiteBalanceConstrainerInternal_fpDistanceOfInputPointFromLocusAB_MSByte , 0x3a05, 0x0000 }, { WhiteBalanceConstrainerInternal_fpConstrainedRedPoint_LSByte , 0x3a0a, 0x0000 }, { WhiteBalanceConstrainerInternal_fpConstrainedRedPoint_MSByte , 0x3a09, 0x0000 }, { WhiteBalanceConstrainerInternal_fpConstrainedBluePoint_LSByte , 0x3a0e, 0x0000 }, { WhiteBalanceConstrainerInternal_fpConstrainedBluePoint_MSByte , 0x3a0d, 0x0000 }, + +// page "ModeSetupBank1" [mode static] +// { ModeSetupBank1_uwInputImageSize_X_LSByte , 0x3a82, 0x0000 }, { ModeSetupBank1_uwInputImageSize_X_MSByte , 0x3a81, 0x0000 }, { ModeSetupBank1_uwInputImageSize_Y_LSByte , 0x3a86, 0x0000 }, { ModeSetupBank1_uwInputImageSize_Y_MSByte , 0x3a85, 0x0000 }, { ModeSetupBank1_uwMaxImageSize_X_LSByte , 0x3a8a, 0x0000 }, @@ -4381,11 +6261,11 @@ struct nomadik_vpip_param vpip_default_p { ModeSetupBank1_uwMaxImageSize_Y_MSByte , 0x3a8d, 0x0000 }, { ModeSetupBank1_uwMinImageSize_X_LSByte , 0x3a92, 0x0000 }, { ModeSetupBank1_uwMinImageSize_X_MSByte , 0x3a91, 0x0000 }, { ModeSetupBank1_uwMinImageSize_Y_LSByte , 0x3a96, 0x0000 }, { ModeSetupBank1_uwMinImageSize_Y_MSByte , 0x3a95, 0x0000 }, -{ ModeSetupBank1_bActiveSensor , 0x3a98, 0x0002 }, + { ModeSetupBank1_bActiveSensor , 0x3a98, 0x2}, { ModeSetupBank1_fLowPowerStreaming , 0x3a9a, 0x0000 }, { ModeSetupBank1_bTestMode , 0x3a9c, 0x0000 }, { ModeSetupBank1_bNumberOfStatusLines , 0x3a9e, 0x0000 }, { ModeSetupBank1_bNumberOfDarkLines , 0x3aa0, 0x0000 }, { ModeSetupBank1_bNumberOfBlackLines , 0x3aa2, 0x0000 }, @@ -4394,13 +6274,22 @@ struct nomadik_vpip_param vpip_default_p { ModeSetupBank1_uwNumberOfInterFrameLines_LSByte , 0x3aaa, 0x0000 }, { ModeSetupBank1_uwNumberOfInterFrameLines_MSByte , 0x3aa9, 0x0000 }, { ModeSetupBank1_bNumberOfDummyColumns , 0x3aac, 0x0000 }, { ModeSetupBank1_bInputImageSource , 0x3aae, 0x0000 }, { ModeSetupBank1_bOutputImageDestination , 0x3ab0, 0x0000 }, + +// page "DummyPage3" +// { DummyPage3_bDummyPageElement , 0x3b00, 0x0000 }, + +// page "DummyPage4" +// { DummyPage4_bDummyPageElement , 0x3b80, 0x0000 }, -{ AntiVignetteControlsFar_fDisableFilter , 0x3c00, 0x0001 }, + +// page "AntiVignetteControlsFar" +// + { AntiVignetteControlsFar_fDisableFilter , 0x3c00 ,0x1}, { AntiVignetteControlsFar_bFilterCoeff_R2_r , 0x3c02, 0x0000 }, { AntiVignetteControlsFar_bFilterCoeff_R2_gr , 0x3c04, 0x0000 }, { AntiVignetteControlsFar_bFilterCoeff_R2_gb , 0x3c06, 0x0000 }, { AntiVignetteControlsFar_bFilterCoeff_R2_b , 0x3c08, 0x0000 }, { AntiVignetteControlsFar_bFilterCoeff_R4_r , 0x3c0a, 0x0000 }, @@ -4432,11 +6321,14 @@ struct nomadik_vpip_param vpip_default_p { AntiVignetteControlsFar_bUnityOffset_r , 0x3c3e, 0x0000 }, { AntiVignetteControlsFar_bUnityOffset_gr , 0x3c40, 0x0000 }, { AntiVignetteControlsFar_bUnityOffset_gb , 0x3c42, 0x0000 }, { AntiVignetteControlsFar_bUnityOffset_b , 0x3c44, 0x0000 }, { AntiVignetteControlsFar_fAdaptiveAntiVignetteEnable , 0x3c46, 0x0000 }, -{ AntiVignetteControlsNear_fDisableFilter , 0x3c80, 0x0001 }, + +// page "AntiVignetteControlsNear" +// + { AntiVignetteControlsNear_fDisableFilter , 0x3c80 ,0x1}, { AntiVignetteControlsNear_bFilterCoeff_R2_r , 0x3c82, 0x0000 }, { AntiVignetteControlsNear_bFilterCoeff_R2_gr , 0x3c84, 0x0000 }, { AntiVignetteControlsNear_bFilterCoeff_R2_gb , 0x3c86, 0x0000 }, { AntiVignetteControlsNear_bFilterCoeff_R2_b , 0x3c88, 0x0000 }, { AntiVignetteControlsNear_bFilterCoeff_R4_r , 0x3c8a, 0x0000 }, @@ -4468,19 +6360,25 @@ struct nomadik_vpip_param vpip_default_p { AntiVignetteControlsNear_bUnityOffset_r , 0x3cbe, 0x0000 }, { AntiVignetteControlsNear_bUnityOffset_gr , 0x3cc0, 0x0000 }, { AntiVignetteControlsNear_bUnityOffset_gb , 0x3cc2, 0x0000 }, { AntiVignetteControlsNear_bUnityOffset_b , 0x3cc4, 0x0000 }, { AntiVignetteControlsNear_fAdaptiveAntiVignetteEnable , 0x3cc6, 0x0000 }, + +// page "AFStatsControls" [mode static] +// { AFStatsControls_fAbsSquareEnabled , 0x3d00, 0x0000 }, { AFStatsControls_bCoringValue , 0x3d02, 0x0000 }, { AFStatsControls_bWindowsSystem , 0x3d04, 0x0000 }, { AFStatsControls_bHRatio_Num , 0x3d06, 0x0000 }, { AFStatsControls_bHRatio_Den , 0x3d08, 0x0000 }, { AFStatsControls_bVRatio_Num , 0x3d0a, 0x0000 }, { AFStatsControls_bVRatio_Den , 0x3d0c, 0x0000 }, { AFStatsControls_bHostActiveZonesCounter , 0x3d0e, 0x0000 }, { AFStatsControls_fAutoRefresh , 0x3d10, 0x0000 }, + +// page "AFStatsStatus" [read only] +// { AFStatsStatus_bAFStats_Error , 0x3d80, 0x0000 }, { AFStatsStatus_fAbsSquareEnabled , 0x3d82, 0x0000 }, { AFStatsStatus_bCoringValue , 0x3d84, 0x0000 }, { AFStatsStatus_bWindowsSystem , 0x3d86, 0x0000 }, { AFStatsStatus_bActiveZonesCounter , 0x3d88, 0x0000 }, @@ -4501,10 +6399,13 @@ struct nomadik_vpip_param vpip_default_p { AFStatsStatus_udwMaxFocusMeasurePerPixel_Byte1 , 0x3da6, 0x0000 }, { AFStatsStatus_udwMaxFocusMeasurePerPixel_Byte2 , 0x3da8, 0x0000 }, { AFStatsStatus_udwMaxFocusMeasurePerPixel_Byte3 , 0x3daa, 0x0000 }, { AFStatsStatus_uwStartingAFZoneLine_LSByte , 0x3dae, 0x0000 }, { AFStatsStatus_uwStartingAFZoneLine_MSByte , 0x3dad, 0x0000 }, + +// page "AFFocusStats" +// { AFFocusStats_udwStatsValue_0_Byte0 , 0x3e00, 0x0000 }, { AFFocusStats_udwStatsValue_0_Byte1 , 0x3e02, 0x0000 }, { AFFocusStats_udwStatsValue_0_Byte2 , 0x3e04, 0x0000 }, { AFFocusStats_udwStatsValue_0_Byte3 , 0x3e06, 0x0000 }, { AFFocusStats_udwStatsValue_1_Byte0 , 0x3e08, 0x0000 }, @@ -4529,17 +6430,52 @@ struct nomadik_vpip_param vpip_default_p { AFFocusStats_udwStatsValue_5_Byte3 , 0x3e2e, 0x0000 }, { AFFocusStats_udwStatsValue_6_Byte0 , 0x3e30, 0x0000 }, { AFFocusStats_udwStatsValue_6_Byte1 , 0x3e32, 0x0000 }, { AFFocusStats_udwStatsValue_6_Byte2 , 0x3e34, 0x0000 }, { AFFocusStats_udwStatsValue_6_Byte3 , 0x3e36, 0x0000 }, + +// page "AFLightStats" +// { AFLightStats_bStatsValue_0 , 0x3e80, 0x0000 }, { AFLightStats_bStatsValue_1 , 0x3e82, 0x0000 }, { AFLightStats_bStatsValue_2 , 0x3e84, 0x0000 }, { AFLightStats_bStatsValue_3 , 0x3e86, 0x0000 }, { AFLightStats_bStatsValue_4 , 0x3e88, 0x0000 }, { AFLightStats_bStatsValue_5 , 0x3e8a, 0x0000 }, { AFLightStats_bStatsValue_6 , 0x3e8c, 0x0000 }, + +// page "FLADriverLowLevelParameters" +// + /* + { FLADriverLowLevelParameters_wMinPosition_LSByte , 0x3f02 ,0x0000}, + { FLADriverLowLevelParameters_wMinPosition_MSByte , 0x3f01 ,0x0000}, + { FLADriverLowLevelParameters_wMaxPosition_LSByte , 0x3f06 ,0x0000}, + { FLADriverLowLevelParameters_wMaxPosition_MSByte , 0x3f05 ,0x0000}, + { FLADriverLowLevelParameters_wHomePosition_LSByte , 0x3f0a ,0x0000}, + { FLADriverLowLevelParameters_wHomePosition_MSByte , 0x3f09 ,0x0000}, + { FLADriverLowLevelParameters_wParkPosition_LSByte , 0x3f0e ,0x0000}, + { FLADriverLowLevelParameters_wParkPosition_MSByte , 0x3f0d ,0x0000}, + { FLADriverLowLevelParameters_bFramesToSkip , 0x3f10 ,0x0000}, + { FLADriverLowLevelParameters_AutoSkipNextFrame , 0x3f12 ,0x1}, + { FLADriverLowLevelParameters_bLowLevelMacroPos , 0x3f14 ,0x0000}, + { FLADriverLowLevelParameters_bLowLevelInfinityPos , 0x3f16 ,0x0000}, + { FLADriverLowLevelParameters_bLowLevelPositionTolerance , 0x3f18 ,0x0000}, + { FLADriverLowLevelParameters_bLowLevelTimeLimit , 0x3f1a ,0x0000}, + { FLADriverLowLevelParameters_bMaxNumberRetries , 0x3f1c ,0xa}, + { FLADriverLowLevelParameters_fLowLevelDriverInitialized , 0x3f1e ,0x1}, + { FLADriverLowLevelParameters_fOverwriteLowLevelLimits , 0x3f20 ,0x1}, + { FLADriverLowLevelParameters_bNVMRead , 0x3f22 ,0x0000}, + { FLADriverLowLevelParameters_bNVMScalingFactorInfinity , 0x3f24 ,0x0000}, + { FLADriverLowLevelParameters_bNVMScalingFactorMacro , 0x3f26 ,0x0000}, + { FLADriverLowLevelParameters_bNVM_PS_Offset , 0x3f28 ,0x0000}, + { FLADriverLowLevelParameters_bNVM_PS_Gains , 0x3f2a ,0x0000}, + { FLADriverLowLevelParameters_bNVM_PS_IBias , 0x3f2c ,0x0000}, + { FLADriverLowLevelParameters_bNVM_PS_RampGain , 0x3f2e ,0x0000}, + { FLADriverLowLevelParameters_bNVM_PS_Type , 0x3f30 ,0x0000}, + { FLADriverLowLevelParameters_uwNVM_minidriver_m_c_LSByte , 0x3f34 ,0x0000}, + { FLADriverLowLevelParameters_uwNVM_minidriver_m_c_MSByte , 0x3f33 ,0x0000}, + */ { FLADriverLowLevelParameters_wMinPosition_LSByte , 0x3f02, 0x0000 }, { FLADriverLowLevelParameters_wMinPosition_MSByte , 0x3f01, 0x0000 }, { FLADriverLowLevelParameters_wMaxPosition_LSByte , 0x3f06, 0x0000 }, { FLADriverLowLevelParameters_wMaxPosition_MSByte , 0x3f05, 0x0000 }, { FLADriverLowLevelParameters_wHomePosition_LSByte , 0x3f0a, 0x0000 }, @@ -4563,20 +6499,26 @@ struct nomadik_vpip_param vpip_default_p { FLADriverLowLevelParameters_bNVM_PS_IBias , 0x3f2c, 0x0000 }, { FLADriverLowLevelParameters_bNVM_PS_RampGain , 0x3f2e, 0x0000 }, { FLADriverLowLevelParameters_bNVM_PS_Type , 0x3f30, 0x0000 }, { FLADriverLowLevelParameters_uwNVM_minidriver_m_c_LSByte , 0x3f34, 0x0000 }, { FLADriverLowLevelParameters_uwNVM_minidriver_m_c_MSByte , 0x3f33, 0x0000 }, + +// page "FLADriverControls" +// { FLADriverControls_bMMode , 0x3f80, 0x0000 }, { FLADriverControls_wTargetPosition_LSByte , 0x3f84, 0x0000 }, { FLADriverControls_wTargetPosition_MSByte , 0x3f83, 0x0000 }, { FLADriverControls_wPositionTolerance_LSByte , 0x3f88, 0x0000 }, { FLADriverControls_wPositionTolerance_MSByte , 0x3f87, 0x0000 }, { FLADriverControls_uwTimeLimit_ms_LSByte , 0x3f8c, 0x0000 }, { FLADriverControls_uwTimeLimit_ms_MSByte , 0x3f8b, 0x0000 }, { FLADriverControls_bTrigger , 0x3f8e, 0x0000 }, { FLADriverControls_bSlewMode , 0x3f90, 0x0000 }, { FLADriverControls_bSlewRate , 0x3f92, 0x0000 }, + +// page "FLADriverStatus" [read only] +// { FLADriverStatus_wLensPosition_LSByte , 0x4002, 0x0000 }, { FLADriverStatus_wLensPosition_MSByte , 0x4001, 0x0000 }, { FLADriverStatus_fLensIsMoving , 0x4004, 0x0000 }, { FLADriverStatus_fLimitsExceeded , 0x4006, 0x0000 }, { FLADriverStatus_fLensIsAtHome , 0x4008, 0x0000 }, @@ -4584,10 +6526,13 @@ struct nomadik_vpip_param vpip_default_p { FLADriverStatus_bSkippedFrames , 0x400c, 0x0000 }, { FLADriverStatus_bCycles , 0x400e, 0x0000 }, { FLADriverStatus_bMiniDriverTimeoutError , 0x4010, 0x0000 }, { FLADriverStatus_wTargetPosition , 0x4012, 0x0000 }, { FLADriverStatus_bLowLevelPosition , 0x4014, 0x0000 }, + +// page "FocusControls" +// { FocusControls_fErrorReset , 0x4080, 0x0000 }, { FocusControls_bRange , 0x4082, 0x0000 }, { FocusControls_bMode , 0x4084, 0x0000 }, { FocusControls_bAFCommand , 0x4086, 0x0000 }, { FocusControls_bLensCommand , 0x4088, 0x0000 }, @@ -4595,10 +6540,13 @@ struct nomadik_vpip_param vpip_default_p { FocusControls_fTestCoinEnabled , 0x408c, 0x0000 }, { FocusControls_bControlCoin , 0x408e, 0x0000 }, { FocusControls_fInternalStats_Disable , 0x4090, 0x0000 }, { FocusControls_bActuator_Disable , 0x4092, 0x0000 }, { FocusControls_fInhibitAutoMetering , 0x4094, 0x0000 }, + +// page "FocusStatus" [read only] +// { FocusStatus_bModeStatus , 0x4100, 0x0000 }, { FocusStatus_bAFCommandStatus , 0x4102, 0x0000 }, { FocusStatus_bLensCommandStatus , 0x4104, 0x0000 }, { FocusStatus_fAutoFocusEnabled , 0x4106, 0x0000 }, { FocusStatus_bRange , 0x4108, 0x0000 }, @@ -4610,10 +6558,34 @@ struct nomadik_vpip_param vpip_default_p { FocusStatus_fRunForTest , 0x4114, 0x0000 }, { FocusStatus_bStatusCoin , 0x4116, 0x0000 }, { FocusStatus_fInternalStats_Disabled , 0x4118, 0x0000 }, { FocusStatus_bActuator_Disabled , 0x411a, 0x0000 }, { FocusStatus_bLastUsedAFSensor , 0x411c, 0x0000 }, + +// page "FocusRangeConstants" +// + /* + { FocusRangeConstants_wFullRange_LensMinPosition_LSByte , 0x4182 ,0x0000}, + { FocusRangeConstants_wFullRange_LensMinPosition_MSByte , 0x4181 ,0x0000}, + { FocusRangeConstants_wFullRange_LensMaxPosition_LSByte , 0x4186 ,0x0000}, + { FocusRangeConstants_wFullRange_LensMaxPosition_MSByte , 0x4185 ,0x0000}, + { FocusRangeConstants_wFullRange_LensRecoveryPosition_LSByte , 0x418a ,0x0000}, + { FocusRangeConstants_wFullRange_LensRecoveryPosition_MSByte , 0x4189 ,0x0000}, + { FocusRangeConstants_wLandscape_LensMinPosition_LSByte , 0x418e ,0x0000}, + { FocusRangeConstants_wLandscape_LensMinPosition_MSByte , 0x418d ,0x0000}, + { FocusRangeConstants_wLandscape_LensMaxPosition_LSByte , 0x4192 ,0x0000}, + { FocusRangeConstants_wLandscape_LensMaxPosition_MSByte , 0x4191 ,0x0000}, + { FocusRangeConstants_wLandscape_LensRecoveryPosition_LSByte , 0x4196 ,0x0000}, + { FocusRangeConstants_wLandscape_LensRecoveryPosition_MSByte , 0x4195 ,0x0000}, + { FocusRangeConstants_wMacro_LensMinPosition_LSByte , 0x419a ,0x0000}, + { FocusRangeConstants_wMacro_LensMinPosition_MSByte , 0x4199 ,0x0000}, + { FocusRangeConstants_wMacro_LensMaxPosition_LSByte , 0x419e ,0x0000}, + { FocusRangeConstants_wMacro_LensMaxPosition_MSByte , 0x419d ,0x0000}, + { FocusRangeConstants_wMacro_LensRecoveryPosition_LSByte , 0x41a2 ,0x0000}, + { FocusRangeConstants_wMacro_LensRecoveryPosition_MSByte , 0x41a1 ,0x0000}, +*/ + { FocusRangeConstants_wFullRange_LensMinPosition_LSByte , 0x4182, 0x0000 }, { FocusRangeConstants_wFullRange_LensMinPosition_MSByte , 0x4181, 0x0000 }, { FocusRangeConstants_wFullRange_LensMaxPosition_LSByte , 0x4186, 0x0000 }, { FocusRangeConstants_wFullRange_LensMaxPosition_MSByte , 0x4185, 0x03ff }, { FocusRangeConstants_wFullRange_LensRecoveryPosition_LSByte , 0x418a, 0x0000 }, @@ -4628,10 +6600,38 @@ struct nomadik_vpip_param vpip_default_p { FocusRangeConstants_wMacro_LensMinPosition_MSByte , 0x4199, 0x0000 }, { FocusRangeConstants_wMacro_LensMaxPosition_LSByte , 0x419e, 0x0000 }, { FocusRangeConstants_wMacro_LensMaxPosition_MSByte , 0x419d, 0x03ff }, { FocusRangeConstants_wMacro_LensRecoveryPosition_LSByte , 0x41a2, 0x0000 }, { FocusRangeConstants_wMacro_LensRecoveryPosition_MSByte , 0x41a1, 0x01ff }, +// page "AutoFocusControls" +// + /* + { AutoFocusControls_bHostCmd , 0x4200 ,0x0000}, + { AutoFocusControls_fFreezeIfStable , 0x4202 ,0x0000}, + { AutoFocusControls_fFMTesting_AutoDisable , 0x4204 ,0x0000}, + { AutoFocusControls_fFastAFAlgoStart , 0x4206 ,0x0000}, + { AutoFocusControls_fBackLight_Enable , 0x4208 ,0x0000}, + { AutoFocusControls_fBackupSolution , 0x420a ,0x0000}, + { AutoFocusControls_fCheckExposureStable_Enable , 0x420c ,0x0000}, + { AutoFocusControls_fEnableSimpleCoarseThEvaluation , 0x420e ,0x0000}, + { AutoFocusControls_bSelectedMultizoneBehavior , 0x4210 ,0x0000}, + { AutoFocusControls_bBackLightMethodSelected , 0x4212 ,0x0000}, + { AutoFocusControls_bWeighedFunctionSelected , 0x4214 ,0x0000}, + { AutoFocusControls_fMotionBlurEnable , 0x4216 ,0x0000}, + { AutoFocusControls_fLightVariationEnable , 0x4218 ,0x0000}, + { AutoFocusControls_fEnableTrackingThresholdEvaluation , 0x421a ,0x0000}, + { AutoFocusControls_fEnableHeuristicMethod , 0x421c ,0x0000}, + { AutoFocusControls_fEnableBackupSolution , 0x421e ,0x0000}, + { AutoFocusControls_fFineToCoarseAutoTransitionEnable , 0x4220 ,0x0000}, + { AutoFocusControls_fEnableTimedFineExecution , 0x4222 ,0x0000}, + { AutoFocusControls_fEnableTrakingZoneVariation , 0x4224 ,0x0000}, + { AutoFocusControls_fEnableFunctionThresholdTest , 0x4226 ,0x0000}, + { AutoFocusControls_fForceTestState , 0x4228 ,0x0000}, + { AutoFocusControls_bManualAFNextState , 0x422a ,0x0000}, + { AutoFocusControls_fResetHCSPos , 0x422c ,0x0000}, +*/ + { AutoFocusControls_bHostCmd , 0x4200, 0x0000 }, { AutoFocusControls_fFreezeIfStable , 0x4202, 0x0000 }, { AutoFocusControls_fFMTesting_AutoDisable , 0x4204, 0x0001 }, { AutoFocusControls_fFastAFAlgoStart , 0x4206, 0x0000 }, { AutoFocusControls_fBackLight_Enable , 0x4208, 0x0000 }, @@ -4651,10 +6651,39 @@ struct nomadik_vpip_param vpip_default_p { AutoFocusControls_fEnableTrakingZoneVariation , 0x4224, 0x0000 }, { AutoFocusControls_fEnableFunctionThresholdTest , 0x4226, 0x0001 }, { AutoFocusControls_fForceTestState , 0x4228, 0x0000 }, { AutoFocusControls_bManualAFNextState , 0x422a, 0x0000 }, { AutoFocusControls_fResetHCSPos , 0x422c, 0x0001 }, +// page "AutoFocusConstants" +// +/* + { AutoFocusConstants_bCoarseStep , 0x4280 ,0x0000}, + { AutoFocusConstants_bFineStep , 0x4282 ,0x0000}, + { AutoFocusConstants_bFullSearchStep , 0x4284 ,0x0000}, + { AutoFocusConstants_bLeakyIntegratorConstant , 0x4286 ,0x0000}, + { AutoFocusConstants_uwFineThreshold_LSByte , 0x428a ,0x0000}, + { AutoFocusConstants_uwFineThreshold_MSByte , 0x4289 ,0x0000}, + { AutoFocusConstants_bFineToCoarseThreshold , 0x428c ,0x0000}, + { AutoFocusConstants_uwBacklightThreshold_LSByte , 0x4290 ,0x0000}, + { AutoFocusConstants_uwBacklightThreshold_MSByte , 0x428f ,0x0000}, + { AutoFocusConstants_uwMotionBlurInRatio_LSByte , 0x4294 ,0x0000}, + { AutoFocusConstants_uwMotionBlurInRatio_MSByte , 0x4293 ,0x0000}, + { AutoFocusConstants_uwMotionBlurOutRatio_LSByte , 0x4298 ,0x0000}, + { AutoFocusConstants_uwMotionBlurOutRatio_MSByte , 0x4297 ,0x0000}, + { AutoFocusConstants_bMaxNumberContinuouslyInstableTime , 0x429a ,0x0000}, + { AutoFocusConstants_bMaxNumberContinuouslyStableFrame , 0x429c ,0x0000}, + { AutoFocusConstants_uwMaxNumberContinuouslyThresholdTime , 0x429e ,0x0000}, + { AutoFocusConstants_uwFixedLowFocusMeasureValue_LSByte , 0x42a2 ,0x0000}, + { AutoFocusConstants_uwFixedLowFocusMeasureValue_MSByte , 0x42a1 ,0x0000}, + { AutoFocusConstants_bMaxFocusMeasureThreshold , 0x42a4 ,0x0000}, + { AutoFocusConstants_bLightGap , 0x42a6 ,0x0000}, + { AutoFocusConstants_uwDeltaValue_LSByte , 0x42aa ,0x0000}, + { AutoFocusConstants_uwDeltaValue_MSByte , 0x42a9 ,0x0000}, + { AutoFocusConstants_uwMaxFineTh_LSByte , 0x42ae ,0x0000}, + { AutoFocusConstants_uwMaxFineTh_MSByte , 0x42ad ,0x0000}, + */ + { AutoFocusConstants_bCoarseStep , 0x4280, 0x0078 }, { AutoFocusConstants_bFineStep , 0x4282, 0x0014 }, { AutoFocusConstants_bFullSearchStep , 0x4284, 0x0000 }, { AutoFocusConstants_bLeakyIntegratorConstant , 0x4286, 0x0000 }, { AutoFocusConstants_uwFineThreshold_LSByte , 0x428a, 0x0000 }, @@ -4675,15 +6704,21 @@ struct nomadik_vpip_param vpip_default_p { AutoFocusConstants_bLightGap , 0x42a6, 0x0000 }, { AutoFocusConstants_uwDeltaValue_LSByte , 0x42aa, 0x0000 }, { AutoFocusConstants_uwDeltaValue_MSByte , 0x42a9, 0x0000 }, { AutoFocusConstants_uwMaxFineTh_LSByte , 0x42ae, 0x0000 }, { AutoFocusConstants_uwMaxFineTh_MSByte , 0x42ad, 0x0000 }, + +// page "AutoFocusInput" +// { AutoFocusInput_wLensPosition_LSByte , 0x4302, 0x0000 }, { AutoFocusInput_wLensPosition_MSByte , 0x4301, 0x0000 }, { AutoFocusInput_fLimitsExceeded , 0x4304, 0x0000 }, { AutoFocusInput_wLastStepExecuted_LSByte , 0x4308, 0x0000 }, { AutoFocusInput_wLastStepExecuted_MSByte , 0x4307, 0x0000 }, + +// page "AutoFocusStatus" [read only] +// { AutoFocusStatus_bCycles , 0x4380, 0x0000 }, { AutoFocusStatus_bHostCmd , 0x4382, 0x0000 }, { AutoFocusStatus_bAF_PrevState , 0x4384, 0x0000 }, { AutoFocusStatus_bAF_State , 0x4386, 0x0000 }, { AutoFocusStatus_bAF_NextState , 0x4388, 0x0000 }, @@ -4714,14 +6749,20 @@ struct nomadik_vpip_param vpip_default_p { AutoFocusStatus_uwTotalCoarseVariation_LSByte , 0x43bc, 0x0000 }, { AutoFocusStatus_uwTotalCoarseVariation_MSByte , 0x43bb, 0x0000 }, { AutoFocusStatus_uwTotalFineVariation_LSByte , 0x43c0, 0x0000 }, { AutoFocusStatus_uwTotalFineVariation_MSByte , 0x43bf, 0x0000 }, { AutoFocusStatus_bCountVariationRegion , 0x43c2, 0x0000 }, + +// page "AutoFocusOutput" [read only] +// { AutoFocusOutput_cFocusLensActuatorCommand , 0x4400, 0x0000 }, { AutoFocusOutput_wStep_LSByte , 0x4404, 0x0000 }, { AutoFocusOutput_wStep_MSByte , 0x4403, 0x0000 }, { AutoFocusOutput_cDirection , 0x4406, 0x0000 }, + +// page "AutoFocusMeasureData" [read only] +// { AutoFocusMeasureData_udwFocusMeasure_Byte0 , 0x4480, 0x0000 }, { AutoFocusMeasureData_udwFocusMeasure_Byte1 , 0x4482, 0x0000 }, { AutoFocusMeasureData_udwFocusMeasure_Byte2 , 0x4484, 0x0000 }, { AutoFocusMeasureData_udwFocusMeasure_Byte3 , 0x4486, 0x0000 }, { AutoFocusMeasureData_udwPrevFocusMeasure_Byte0 , 0x4488, 0x0000 }, @@ -4774,24 +6815,33 @@ struct nomadik_vpip_param vpip_default_p { AutoFocusMeasureData_udwCurrentFocusMeasureDifference_Byte3 , 0x44e6, 0x0000 }, { AutoFocusMeasureData_udwOldTrackingFocusMeasure_Byte0 , 0x44e8, 0x0000 }, { AutoFocusMeasureData_udwOldTrackingFocusMeasure_Byte1 , 0x44ea, 0x0000 }, { AutoFocusMeasureData_udwOldTrackingFocusMeasure_Byte2 , 0x44ec, 0x0000 }, { AutoFocusMeasureData_udwOldTrackingFocusMeasure_Byte3 , 0x44ee, 0x0000 }, + +// page "AutoFocusWeightControls" +// { AutoFocusWeightControls_bWeight_0 , 0x4500, 0x0000 }, { AutoFocusWeightControls_bWeight_1 , 0x4502, 0x0000 }, { AutoFocusWeightControls_bWeight_2 , 0x4504, 0x0000 }, { AutoFocusWeightControls_bWeight_3 , 0x4506, 0x0000 }, { AutoFocusWeightControls_bWeight_4 , 0x4508, 0x0000 }, { AutoFocusWeightControls_bWeight_5 , 0x450a, 0x0000 }, { AutoFocusWeightControls_bWeight_6 , 0x450c, 0x0000 }, + +// page "AutoFocusDynamicWeight" [read only] +// { AutoFocusDynamicWeight_bWeight_0 , 0x4580, 0x0000 }, { AutoFocusDynamicWeight_bWeight_1 , 0x4582, 0x0000 }, { AutoFocusDynamicWeight_bWeight_2 , 0x4584, 0x0000 }, { AutoFocusDynamicWeight_bWeight_3 , 0x4586, 0x0000 }, { AutoFocusDynamicWeight_bWeight_4 , 0x4588, 0x0000 }, { AutoFocusDynamicWeight_bWeight_5 , 0x458a, 0x0000 }, { AutoFocusDynamicWeight_bWeight_6 , 0x458c, 0x0000 }, + +// page "AutoFocusThresholds" [read only] +// { AutoFocusThresholds_uwCoarseThreshold_LSByte , 0x4602, 0x0000 }, { AutoFocusThresholds_uwCoarseThreshold_MSByte , 0x4601, 0x0000 }, { AutoFocusThresholds_uwFineThreshold_LSByte , 0x4606, 0x0000 }, { AutoFocusThresholds_uwFineThreshold_MSByte , 0x4605, 0x0000 }, { AutoFocusThresholds_uwBeforeMotionBlur_LSByte , 0x460a, 0x0000 }, @@ -4804,10 +6854,13 @@ struct nomadik_vpip_param vpip_default_p { AutoFocusThresholds_udwCurrentVariation_Byte3 , 0x4616, 0x0000 }, { AutoFocusThresholds_udwLowFocusMeasureValue_Byte0 , 0x4618, 0x0000 }, { AutoFocusThresholds_udwLowFocusMeasureValue_Byte1 , 0x461a, 0x0000 }, { AutoFocusThresholds_udwLowFocusMeasureValue_Byte2 , 0x461c, 0x0000 }, { AutoFocusThresholds_udwLowFocusMeasureValue_Byte3 , 0x461e, 0x0000 }, + +// page "AutoFocusHeuristicConstants" +// { AutoFocusHeuristicConstants_uwLensPositionInputMax_LSByte , 0x4682, 0x0000 }, { AutoFocusHeuristicConstants_uwLensPositionInputMax_MSByte , 0x4681, 0x0000 }, { AutoFocusHeuristicConstants_uwLensPositionInputMin_LSByte , 0x4686, 0x0000 }, { AutoFocusHeuristicConstants_uwLensPositionInputMin_MSByte , 0x4685, 0x0000 }, { AutoFocusHeuristicConstants_bBrightnessInputMax , 0x4688, 0x0000 }, @@ -4820,10 +6873,13 @@ struct nomadik_vpip_param vpip_default_p { AutoFocusHeuristicConstants_uwFineToCoarseMax_MSByte , 0x4695, 0x0000 }, { AutoFocusHeuristicConstants_uwFineToCoarseMin_LSByte , 0x469a, 0x0000 }, { AutoFocusHeuristicConstants_uwFineToCoarseMin_MSByte , 0x4699, 0x0000 }, { AutoFocusHeuristicConstants_bHighToMaxFMShiftFactor , 0x469c, 0x0000 }, { AutoFocusHeuristicConstants_bLowToHighFMShiftFactor , 0x469e, 0x0000 }, + +// page "AutoFocusThHeuristicInput" [read only] +// { AutoFocusThHeuristicInput_udwFocusMeasureInputMax_Byte0 , 0x4700, 0x0000 }, { AutoFocusThHeuristicInput_udwFocusMeasureInputMax_Byte1 , 0x4702, 0x0000 }, { AutoFocusThHeuristicInput_udwFocusMeasureInputMax_Byte2 , 0x4704, 0x0000 }, { AutoFocusThHeuristicInput_udwFocusMeasureInputMax_Byte3 , 0x4706, 0x0000 }, { AutoFocusThHeuristicInput_udwFocusMeasureInputMin_Byte0 , 0x4708, 0x0000 }, @@ -4835,23 +6891,35 @@ struct nomadik_vpip_param vpip_default_p { AutoFocusThHeuristicInput_udwFocusMeasureInput_Byte2 , 0x4714, 0x0000 }, { AutoFocusThHeuristicInput_udwFocusMeasureInput_Byte3 , 0x4716, 0x0000 }, { AutoFocusThHeuristicInput_uwLensPositionInput_LSByte , 0x471a, 0x0000 }, { AutoFocusThHeuristicInput_uwLensPositionInput_MSByte , 0x4719, 0x0000 }, { AutoFocusThHeuristicInput_bBrightnessInput , 0x471c, 0x0000 }, + +// page "AutoFocusInstableFocusMeasureStatus" [read only] +// { AutoFocusInstableFocusMeasureStatus_bStatus_SceneDetector , 0x4780, 0x0000 }, { AutoFocusInstableFocusMeasureStatus_bCountInstableFocusMeasure , 0x4782, 0x0000 }, { AutoFocusInstableFocusMeasureStatus_bCountStableFocusMeasure , 0x4784, 0x0000 }, + +// page "AutoFocusLFMFullSearchStatus" [read only] +// { AutoFocusLFMFullSearchStatus_bPrevState_AFFS , 0x4800, 0x0000 }, { AutoFocusLFMFullSearchStatus_bState_AFFS , 0x4802, 0x0000 }, { AutoFocusLFMFullSearchStatus_bNextState_AFFS , 0x4804, 0x0000 }, { AutoFocusLFMFullSearchStatus_bCountFullSearchContinuouslyIncreaseValue , 0x4806, 0x0000 }, + +// page "AutoFocusMZFullSearchStatus" [read only] +// { AutoFocusMZFullSearchStatus_bFS_PrevState , 0x4880, 0x0000 }, { AutoFocusMZFullSearchStatus_bFS_State , 0x4882, 0x0000 }, { AutoFocusMZFullSearchStatus_bFS_NextState , 0x4884, 0x0000 }, { AutoFocusMZFullSearchStatus_bMaxMaxRegionPositionIndex , 0x4886, 0x0000 }, -{ MiscPageElements_fConvertMultiByteReadsIntoSingleByte , 0x4900, 0x0001 }, -{ MiscPageElements_bDelayAfterSettingXshutdown , 0x4902, 0x00f0 }, + +// page "MiscPageElements" +// + { MiscPageElements_fConvertMultiByteReadsIntoSingleByte ,0x4900 ,0x01}, + { MiscPageElements_bDelayAfterSettingXshutdown , 0x4902 ,0xf0}, { MiscPageElements_fEnableIntelligentFlash , 0x4904, 0x0000 }, { MiscPageElements_fEligibleFrameForMetering , 0x4906, 0x0000 }, { MiscPageElements_fFlashGunIlluminatedFrameStreamed , 0x4908, 0x0000 }, { MiscPageElements_VpipCut , 0x490a, 0x0000 }, { MiscPageElements_bGPIOClockFrequency_Mhz , 0x490c, 0x0000 }, @@ -4861,42 +6929,60 @@ struct nomadik_vpip_param vpip_default_p { MiscPageElements_fEnableDelayWhenStoppingSensor , 0x4914, 0x0000 }, { MiscPageElements_fTriggerFlashOnStreaming , 0x4916, 0x0000 }, { MiscPageElements_fDoNotOutputFrameInIntelligentFlash , 0x4918, 0x0000 }, { MiscPageElements_fDisableToshibaInit , 0x491a, 0x0000 }, { MiscPageElements_bNumberofFramesTobeSkippedByRx , 0x491c, 0x0000 }, + +// page "CutBMasterI2cStatus" [read only] +// { CutBMasterI2cStatus_bWriteFifoUseCount , 0x4980, 0x0000 }, + +// page "MasterI2cClockControl" [mode static] +// { MasterI2cClockControl_bCountFall , 0x4a00, 0x0000 }, { MasterI2cClockControl_bCountRise , 0x4a02, 0x0000 }, { MasterI2cClockControl_bCountHigh , 0x4a04, 0x0000 }, { MasterI2cClockControl_bCountBuffer , 0x4a06, 0x0000 }, { MasterI2cClockControl_bCountHoldData , 0x4a08, 0x0000 }, { MasterI2cClockControl_bCountSetupData , 0x4a0a, 0x0000 }, { MasterI2cClockControl_bCountHoldStart , 0x4a0c, 0x0000 }, { MasterI2cClockControl_bCountSetupStart , 0x4a0e, 0x0000 }, { MasterI2cClockControl_bCountSetupStop , 0x4a10, 0x0000 }, + +// page "ZoomMgrFOVCtrl" +// { ZoomMgrFOVCtrl_bShiftCenter , 0x4a80, 0x0000 }, { ZoomMgrFOVCtrl_uwXOrigin_LSByte , 0x4a84, 0x0000 }, { ZoomMgrFOVCtrl_uwXOrigin_MSByte , 0x4a83, 0x0000 }, { ZoomMgrFOVCtrl_uwYOrigin_LSByte , 0x4a88, 0x0000 }, { ZoomMgrFOVCtrl_uwYOrigin_MSByte , 0x4a87, 0x0000 }, { ZoomMgrFOVCtrl_fRestrictMaxFOVToChosenFOV , 0x4a8a, 0x0000 }, { ZoomMgrFOVCtrl_fCalculateMinFOVAlways , 0x4a8c, 0x0000 }, { ZoomMgrFOVCtrl_fInhibitMaxFOVAtModeStaticChange , 0x4a8e, 0x0000 }, + +// page "ZoomMgrSpeedInfo" [read only] +// { ZoomMgrSpeedInfo_bNumberOfFramesOnHold , 0x4b00, 0x0000 }, { ZoomMgrSpeedInfo_bDelay_frames , 0x4b02, 0x0000 }, { ZoomMgrSpeedInfo_uwTotalDelay_frames_LSByte , 0x4b06, 0x0000 }, { ZoomMgrSpeedInfo_uwTotalDelay_frames_MSByte , 0x4b05, 0x0000 }, { ZoomMgrSpeedInfo_bNumberOfZoomSteps , 0x4b08, 0x0000 }, + +// page "ZoomMgrStripeCtrl" +// { ZoomMgrStripeCtrl_bStripeControl , 0x4b80, 0x0000 }, { ZoomMgrStripeCtrl_uwStripeStartAddr_LSByte , 0x4b84, 0x0000 }, { ZoomMgrStripeCtrl_uwStripeStartAddr_MSByte , 0x4b83, 0x0000 }, { ZoomMgrStripeCtrl_uwStripeSize_LSByte , 0x4b88, 0x0000 }, { ZoomMgrStripeCtrl_uwStripeSize_MSByte , 0x4b87, 0x0000 }, { ZoomMgrStripeCtrl_uwStripeInMinLineSize_LSByte , 0x4b8c, 0x0000 }, { ZoomMgrStripeCtrl_uwStripeInMinLineSize_MSByte , 0x4b8b, 0x0000 }, { ZoomMgrStripeCtrl_uwBmsFrameLength_LSByte , 0x4b90, 0x0000 }, { ZoomMgrStripeCtrl_uwBmsFrameLength_MSByte , 0x4b8f, 0x0000 }, + +// page "LftStripeParam" +// { LftStripeParam_uwGPSISize_LSByte , 0x4c02, 0x0000 }, { LftStripeParam_uwGPSISize_MSByte , 0x4c01, 0x0000 }, { LftStripeParam_uwGPSOSize_LSByte , 0x4c06, 0x0000 }, { LftStripeParam_uwGPSOSize_MSByte , 0x4c05, 0x0000 }, { LftStripeParam_uwRightBorder_LSByte , 0x4c0a, 0x0000 }, @@ -4913,10 +6999,13 @@ struct nomadik_vpip_param vpip_default_p { LftStripeParam_uwStripeInCropSize_MSByte , 0x4c1d, 0x0000 }, { LftStripeParam_uwStripeOutCropStart_LSByte , 0x4c22, 0x0000 }, { LftStripeParam_uwStripeOutCropStart_MSByte , 0x4c21, 0x0000 }, { LftStripeParam_uwStripeOutCropSize_LSByte , 0x4c26, 0x0000 }, { LftStripeParam_uwStripeOutCropSize_MSByte , 0x4c25, 0x0000 }, + +// page "RgtStripeParam" +// { RgtStripeParam_uwGPSISize_LSByte , 0x4c82, 0x0000 }, { RgtStripeParam_uwGPSISize_MSByte , 0x4c81, 0x0000 }, { RgtStripeParam_uwGPSOSize_LSByte , 0x4c86, 0x0000 }, { RgtStripeParam_uwGPSOSize_MSByte , 0x4c85, 0x0000 }, { RgtStripeParam_uwRightBorder_LSByte , 0x4c8a, 0x0000 }, @@ -4933,34 +7022,70 @@ struct nomadik_vpip_param vpip_default_p { RgtStripeParam_uwStripeInCropSize_MSByte , 0x4c9d, 0x0000 }, { RgtStripeParam_uwStripeOutCropStart_LSByte , 0x4ca2, 0x0000 }, { RgtStripeParam_uwStripeOutCropStart_MSByte , 0x4ca1, 0x0000 }, { RgtStripeParam_uwStripeOutCropSize_LSByte , 0x4ca6, 0x0000 }, { RgtStripeParam_uwStripeOutCropSize_MSByte , 0x4ca5, 0x0000 }, + +// page "DigitalGainStatus" [read only] +// { DigitalGainStatus_uwCodedGreen1Gain_LSByte , 0x4d02, 0x0000 }, { DigitalGainStatus_uwCodedGreen1Gain_MSByte , 0x4d01, 0x0000 }, { DigitalGainStatus_uwCodedRedGain_LSByte , 0x4d06, 0x0000 }, { DigitalGainStatus_uwCodedRedGain_MSByte , 0x4d05, 0x0000 }, { DigitalGainStatus_uwCodedBlueGain_LSByte , 0x4d0a, 0x0000 }, { DigitalGainStatus_uwCodedBlueGain_MSByte , 0x4d09, 0x0000 }, { DigitalGainStatus_uwCodedGreen2Gain_LSByte , 0x4d0e, 0x0000 }, { DigitalGainStatus_uwCodedGreen2Gain_MSByte , 0x4d0d, 0x0000 }, + +// page "OffsetCompensationStatus" [read only] +// { OffsetCompensationStatus_uwOffset_LSByte , 0x4d82, 0x0000 }, { OffsetCompensationStatus_uwOffset_MSByte , 0x4d81, 0x0000 }, { OffsetCompensationStatus_fpOffsetCompensationGain_LSByte , 0x4d86, 0x0000 }, { OffsetCompensationStatus_fpOffsetCompensationGain_MSByte , 0x4d85, 0x0000 }, + +// page "AntiFlickerExposureStatus" [read only] +// { AntiFlickerExposureStatus_fpFlickerFreePeriod_us_LSByte , 0x4e02, 0x0000 }, { AntiFlickerExposureStatus_fpFlickerFreePeriod_us_MSByte , 0x4e01, 0x0000 }, { AntiFlickerExposureStatus_fpGainedFlickerFreeTimePeriod_us_LSByte , 0x4e06, 0x0000 }, { AntiFlickerExposureStatus_fpGainedFlickerFreeTimePeriod_us_MSByte , 0x4e05, 0x0000 }, { AntiFlickerExposureStatus_uwMaxFlickerFreeBunches_LSByte , 0x4e0a, 0x0000 }, { AntiFlickerExposureStatus_uwMaxFlickerFreeBunches_MSByte , 0x4e09, 0x0000 }, { AntiFlickerExposureStatus_fpConstrainedFlickerFreePeriod_us_LSByte , 0x4e0e, 0x0000 }, { AntiFlickerExposureStatus_fpConstrainedFlickerFreePeriod_us_MSByte , 0x4e0d, 0x0000 }, + +// page "ModuleEnables" +// { ModuleEnables_fDisableCho , 0x4e80, 0x0000 }, { ModuleEnables_fDisableChg , 0x4e82, 0x0000 }, + +// page "DummyPage1" [read only] +// { DummyPage1_bDummyPageElement , 0x4f00, 0x0000 }, + +// page "DummyPage2" [read only] +// { DummyPage2_bDummyPageElement , 0x4f80, 0x0000 }, + +// page "SensorSetupFarSensor" +// +/* { SensorSetupFarSensor_uwGuaranteedDataSaturationLevel_LSByte , 0x5002 ,0x0000}, + { SensorSetupFarSensor_uwGuaranteedDataSaturationLevel_MSByte , 0x5001 ,0x0000}, + { SensorSetupFarSensor_uwMinimumSensorRxPixelValue_LSByte , 0x5006 ,0x0000}, + { SensorSetupFarSensor_uwMinimumSensorRxPixelValue_MSByte , 0x5005 ,0x0000}, + { SensorSetupFarSensor_uwMaximumSensorRxPixelValue_LSByte , 0x500a ,0x0000}, + { SensorSetupFarSensor_uwMaximumSensorRxPixelValue_MSByte , 0x5009 ,0x0000}, + { SensorSetupFarSensor_fpRedTiltGain_LSByte , 0x500e ,0x0000}, + { SensorSetupFarSensor_fpRedTiltGain_MSByte , 0x500d ,0x0000}, + { SensorSetupFarSensor_fpGreenTiltGain_LSByte , 0x5012 ,0x0000}, + { SensorSetupFarSensor_fpGreenTiltGain_MSByte , 0x5011 ,0x0000}, + { SensorSetupFarSensor_fpBlueTiltGain_LSByte , 0x5016 ,0x0000}, + { SensorSetupFarSensor_fpBlueTiltGain_MSByte , 0x5015 ,0x0000}, + { SensorSetupFarSensor_BlackCorrectionOffset , 0x5018 ,0x0000}, +*/ + { SensorSetupFarSensor_uwGuaranteedDataSaturationLevel_LSByte , 0x5002, 0x0000 }, { SensorSetupFarSensor_uwGuaranteedDataSaturationLevel_MSByte , 0x5001, 0x043f }, { SensorSetupFarSensor_uwMinimumSensorRxPixelValue_LSByte , 0x5006, 0x0000 }, { SensorSetupFarSensor_uwMinimumSensorRxPixelValue_MSByte , 0x5005, 0x0004 }, { SensorSetupFarSensor_uwMaximumSensorRxPixelValue_LSByte , 0x500a, 0x0000 }, @@ -4970,10 +7095,13 @@ struct nomadik_vpip_param vpip_default_p { SensorSetupFarSensor_fpGreenTiltGain_LSByte , 0x5012, 0x0000 }, { SensorSetupFarSensor_fpGreenTiltGain_MSByte , 0x5011, 0x3e00 }, { SensorSetupFarSensor_fpBlueTiltGain_LSByte , 0x5016, 0x0000 }, { SensorSetupFarSensor_fpBlueTiltGain_MSByte , 0x5015, 0x3e00 }, { SensorSetupFarSensor_BlackCorrectionOffset , 0x5018, 0x0000 }, + +// page "SensorSetupNearSensor" +// { SensorSetupNearSensor_uwGuaranteedDataSaturationLevel_LSByte , 0x5082, 0x0000 }, { SensorSetupNearSensor_uwGuaranteedDataSaturationLevel_MSByte , 0x5081, 0x0000 }, { SensorSetupNearSensor_uwMinimumSensorRxPixelValue_LSByte , 0x5086, 0x0000 }, { SensorSetupNearSensor_uwMinimumSensorRxPixelValue_MSByte , 0x5085, 0x0000 }, { SensorSetupNearSensor_uwMaximumSensorRxPixelValue_LSByte , 0x508a, 0x0000 }, @@ -4983,10 +7111,13 @@ struct nomadik_vpip_param vpip_default_p { SensorSetupNearSensor_fpGreenTiltGain_LSByte , 0x5092, 0x0000 }, { SensorSetupNearSensor_fpGreenTiltGain_MSByte , 0x5091, 0x0000 }, { SensorSetupNearSensor_fpBlueTiltGain_LSByte , 0x5096, 0x0000 }, { SensorSetupNearSensor_fpBlueTiltGain_MSByte , 0x5095, 0x0000 }, { SensorSetupNearSensor_BlackCorrectionOffset , 0x5098, 0x0000 }, + +// page "ToshibaOtpRead" [read only] +// { ToshibaOtpRead_otp_inf_2 , 0x5100, 0x0000 }, { ToshibaOtpRead_otp_inf_1 , 0x5102, 0x0000 }, { ToshibaOtpRead_otp_inf_0 , 0x5104, 0x0000 }, { ToshibaOtpRead_otp_mac_2 , 0x5106, 0x0000 }, { ToshibaOtpRead_otp_mac_1 , 0x5108, 0x0000 }, @@ -4994,20 +7125,71 @@ struct nomadik_vpip_param vpip_default_p { ToshibaOtpRead_otp_posA_1 , 0x510c, 0x0000 }, { ToshibaOtpRead_otp_posA_0 , 0x510e, 0x0000 }, { ToshibaOtpRead_otp_posB_1 , 0x5110, 0x0000 }, { ToshibaOtpRead_otp_posB_0 , 0x5112, 0x0000 }, { ToshibaOtpRead_otp_register_map_ver , 0x5114, 0x0000 }, + +// page "NormalisedWhiteBalanceGains" [read only] +// { NormalisedWhiteBalanceGains_fpNormalisedRedGain_LSByte , 0x5182, 0x0000 }, { NormalisedWhiteBalanceGains_fpNormalisedRedGain_MSByte , 0x5181, 0x0000 }, + +// page "ReferenceIlluminantCasts" +// + /* + { ReferenceIlluminantCasts_fpCAST0_LSByte , 0x5202 ,0x0000}, + { ReferenceIlluminantCasts_fpCAST0_MSByte , 0x5201 ,0x0000}, + { ReferenceIlluminantCasts_fpCAST1_LSByte , 0x5206 ,0x0000}, + { ReferenceIlluminantCasts_fpCAST1_MSByte , 0x5205 ,0x0000}, + { ReferenceIlluminantCasts_fpCAST2_LSByte , 0x520a ,0x0000}, + { ReferenceIlluminantCasts_fpCAST2_MSByte , 0x5209 ,0x0000}, + { ReferenceIlluminantCasts_fpCAST3_LSByte , 0x520e ,0x0000}, + { ReferenceIlluminantCasts_fpCAST3_MSByte , 0x520d ,0x0000}, + */ { ReferenceIlluminantCasts_fpCAST0_LSByte , 0x5202, 0x0000 }, { ReferenceIlluminantCasts_fpCAST0_MSByte , 0x5201, 0x38b8 }, { ReferenceIlluminantCasts_fpCAST1_LSByte , 0x5206, 0x0000 }, { ReferenceIlluminantCasts_fpCAST1_MSByte , 0x5205, 0x396d }, { ReferenceIlluminantCasts_fpCAST2_LSByte , 0x520a, 0x0000 }, { ReferenceIlluminantCasts_fpCAST2_MSByte , 0x5209, 0x3a1b }, { ReferenceIlluminantCasts_fpCAST3_LSByte , 0x520e, 0x0000 }, { ReferenceIlluminantCasts_fpCAST3_MSByte , 0x520d, 0x3af2 }, + +// page "AdaptiveAVParameter_B" +// + /* + { AdaptiveAVParameter_B_bAvUnityOffset_Day , 0x5280 ,0x0000}, + { AdaptiveAVParameter_B_bAvCoeffR2_Day , 0x5282 ,0x0000}, + { AdaptiveAVParameter_B_bAvCoeffR4_Day , 0x5284 ,0x0000}, + { AdaptiveAVParameter_B_wAvHOffset_Day_LSByte , 0x5288 ,0x0000}, + { AdaptiveAVParameter_B_wAvHOffset_Day_MSByte , 0x5287 ,0x0000}, + { AdaptiveAVParameter_B_wAvVOffset_Day_LSByte , 0x528c ,0x0000}, + { AdaptiveAVParameter_B_wAvVOffset_Day_MSByte , 0x528b ,0x0000}, + { AdaptiveAVParameter_B_bAvUnityOffset_COO , 0x528e ,0x0000}, + { AdaptiveAVParameter_B_bAvCoeffR2_COO , 0x5290 ,0x0000}, + { AdaptiveAVParameter_B_bAvCoeffR4_COO , 0x5292 ,0x0000}, + { AdaptiveAVParameter_B_wAvHOffset_COO_LSByte , 0x5296 ,0x0000}, + { AdaptiveAVParameter_B_wAvHOffset_COO_MSByte , 0x5295 ,0x0000}, + { AdaptiveAVParameter_B_wAvVOffset_COO_LSByte , 0x529a ,0x0000}, + { AdaptiveAVParameter_B_wAvVOffset_COO_MSByte , 0x5299 ,0x0000}, + { AdaptiveAVParameter_B_bAvUnityOffset_INC , 0x529c ,0x0000}, + { AdaptiveAVParameter_B_bAvCoeffR2_INC , 0x529e ,0x0000}, + { AdaptiveAVParameter_B_bAvCoeffR4_INC , 0x52a0 ,0x0000}, + { AdaptiveAVParameter_B_wAvHOffset_INC_LSByte , 0x52a4 ,0x0000}, + { AdaptiveAVParameter_B_wAvHOffset_INC_MSByte , 0x52a3 ,0x0000}, + { AdaptiveAVParameter_B_wAvVOffset_INC_LSByte , 0x52a8 ,0x0000}, + { AdaptiveAVParameter_B_wAvVOffset_INC_MSByte , 0x52a7 ,0x0000}, + { AdaptiveAVParameter_B_bAvUnityOffset_HOR , 0x52aa ,0x0000}, + { AdaptiveAVParameter_B_bAvCoeffR2_HOR , 0x52ac ,0x0000}, + { AdaptiveAVParameter_B_bAvCoeffR4_HOR , 0x52ae ,0x0000}, + { AdaptiveAVParameter_B_wAvHOffset_HOR_LSByte , 0x52b2 ,0x0000}, + { AdaptiveAVParameter_B_wAvHOffset_HOR_MSByte , 0x52b1 ,0x0000}, + { AdaptiveAVParameter_B_wAvVOffset_HOR_LSByte , 0x52b6 ,0x0000}, + { AdaptiveAVParameter_B_wAvVOffset_HOR_MSByte , 0x52b5 ,0x0000}, +*/ + + { AdaptiveAVParameter_B_bAvUnityOffset_Day , 0x5280, 0x0040 }, { AdaptiveAVParameter_B_bAvCoeffR2_Day , 0x5282, 0x003e }, { AdaptiveAVParameter_B_bAvCoeffR4_Day , 0x5284, 0x00e8 }, { AdaptiveAVParameter_B_wAvHOffset_Day_LSByte , 0x5288, 0x0000 }, { AdaptiveAVParameter_B_wAvHOffset_Day_MSByte , 0x5287, 0x0003 }, @@ -5032,10 +7214,42 @@ struct nomadik_vpip_param vpip_default_p { AdaptiveAVParameter_B_bAvCoeffR4_HOR , 0x52ae, 0x00f0 }, { AdaptiveAVParameter_B_wAvHOffset_HOR_LSByte , 0x52b2, 0x0000 }, { AdaptiveAVParameter_B_wAvHOffset_HOR_MSByte , 0x52b1, 0x000b }, { AdaptiveAVParameter_B_wAvVOffset_HOR_LSByte , 0x52b6, 0x0000 }, { AdaptiveAVParameter_B_wAvVOffset_HOR_MSByte , 0x52b5, 0x001d }, + +// page "AdaptiveAVParameter_GB" +// +/* { AdaptiveAVParameter_GB_bAvUnityOffset_Day , 0x5300 ,0x0000}, + { AdaptiveAVParameter_GB_bAvCoeffR2_Day , 0x5302 ,0x0000}, + { AdaptiveAVParameter_GB_bAvCoeffR4_Day , 0x5304 ,0x0000}, + { AdaptiveAVParameter_GB_wAvHOffset_Day_LSByte , 0x5308 ,0x0000}, + { AdaptiveAVParameter_GB_wAvHOffset_Day_MSByte , 0x5307 ,0x0000}, + { AdaptiveAVParameter_GB_wAvVOffset_Day_LSByte , 0x530c ,0x0000}, + { AdaptiveAVParameter_GB_wAvVOffset_Day_MSByte , 0x530b ,0x0000}, + { AdaptiveAVParameter_GB_bAvUnityOffset_COO , 0x530e ,0x0000}, + { AdaptiveAVParameter_GB_bAvCoeffR2_COO , 0x5310 ,0x0000}, + { AdaptiveAVParameter_GB_bAvCoeffR4_COO , 0x5312 ,0x0000}, + { AdaptiveAVParameter_GB_wAvHOffset_COO_LSByte , 0x5316 ,0x0000}, + { AdaptiveAVParameter_GB_wAvHOffset_COO_MSByte , 0x5315 ,0x0000}, + { AdaptiveAVParameter_GB_wAvVOffset_COO_LSByte , 0x531a ,0x0000}, + { AdaptiveAVParameter_GB_wAvVOffset_COO_MSByte , 0x5319 ,0x0000}, + { AdaptiveAVParameter_GB_bAvUnityOffset_INC , 0x531c ,0x0000}, + { AdaptiveAVParameter_GB_bAvCoeffR2_INC , 0x531e ,0x0000}, + { AdaptiveAVParameter_GB_bAvCoeffR4_INC , 0x5320 ,0x0000}, + { AdaptiveAVParameter_GB_wAvHOffset_INC_LSByte , 0x5324 ,0x0000}, + { AdaptiveAVParameter_GB_wAvHOffset_INC_MSByte , 0x5323 ,0x0000}, + { AdaptiveAVParameter_GB_wAvVOffset_INC_LSByte , 0x5328 ,0x0000}, + { AdaptiveAVParameter_GB_wAvVOffset_INC_MSByte , 0x5327 ,0x0000}, + { AdaptiveAVParameter_GB_bAvUnityOffset_HOR , 0x532a ,0x0000}, + { AdaptiveAVParameter_GB_bAvCoeffR2_HOR , 0x532c ,0x0000}, + { AdaptiveAVParameter_GB_bAvCoeffR4_HOR , 0x532e ,0x0000}, + { AdaptiveAVParameter_GB_wAvHOffset_HOR_LSByte , 0x5332 ,0x0000}, + { AdaptiveAVParameter_GB_wAvHOffset_HOR_MSByte , 0x5331 ,0x0000}, + { AdaptiveAVParameter_GB_wAvVOffset_HOR_LSByte , 0x5336 ,0x0000}, + { AdaptiveAVParameter_GB_wAvVOffset_HOR_MSByte , 0x5335 ,0x0000}, +*/ { AdaptiveAVParameter_GB_bAvUnityOffset_Day , 0x5300, 0x0040 }, { AdaptiveAVParameter_GB_bAvCoeffR2_Day , 0x5302, 0x0047 }, { AdaptiveAVParameter_GB_bAvCoeffR4_Day , 0x5304, 0x00ec }, { AdaptiveAVParameter_GB_wAvHOffset_Day_LSByte , 0x5308, 0x0000 }, { AdaptiveAVParameter_GB_wAvHOffset_Day_MSByte , 0x5307, 0x000a }, @@ -5060,10 +7274,43 @@ struct nomadik_vpip_param vpip_default_p { AdaptiveAVParameter_GB_bAvCoeffR4_HOR , 0x532e, 0x00f0 }, { AdaptiveAVParameter_GB_wAvHOffset_HOR_LSByte , 0x5332, 0x0000 }, { AdaptiveAVParameter_GB_wAvHOffset_HOR_MSByte , 0x5331, 0x000c }, { AdaptiveAVParameter_GB_wAvVOffset_HOR_LSByte , 0x5336, 0x0000 }, { AdaptiveAVParameter_GB_wAvVOffset_HOR_MSByte , 0x5335, 0x0014 }, +// page "AdaptiveAVParameter_GR" +// + /* + { AdaptiveAVParameter_GR_bAvUnityOffset_Day , 0x5380 ,0x0000}, + { AdaptiveAVParameter_GR_bAvCoeffR2_Day , 0x5382 ,0x0000}, + { AdaptiveAVParameter_GR_bAvCoeffR4_Day , 0x5384 ,0x0000}, + { AdaptiveAVParameter_GR_wAvHOffset_Day_LSByte , 0x5388 ,0x0000}, + { AdaptiveAVParameter_GR_wAvHOffset_Day_MSByte , 0x5387 ,0x0000}, + { AdaptiveAVParameter_GR_wAvVOffset_Day_LSByte , 0x538c ,0x0000}, + { AdaptiveAVParameter_GR_wAvVOffset_Day_MSByte , 0x538b ,0x0000}, + { AdaptiveAVParameter_GR_bAvUnityOffset_COO , 0x538e ,0x0000}, + { AdaptiveAVParameter_GR_bAvCoeffR2_COO , 0x5390 ,0x0000}, + { AdaptiveAVParameter_GR_bAvCoeffR4_COO , 0x5392 ,0x0000}, + { AdaptiveAVParameter_GR_wAvHOffset_COO_LSByte , 0x5396 ,0x0000}, + { AdaptiveAVParameter_GR_wAvHOffset_COO_MSByte , 0x5395 ,0x0000}, + { AdaptiveAVParameter_GR_wAvVOffset_COO_LSByte , 0x539a ,0x0000}, + { AdaptiveAVParameter_GR_wAvVOffset_COO_MSByte , 0x5399 ,0x0000}, + { AdaptiveAVParameter_GR_bAvUnityOffset_INC , 0x539c ,0x0000}, + { AdaptiveAVParameter_GR_bAvCoeffR2_INC , 0x539e ,0x0000}, + { AdaptiveAVParameter_GR_bAvCoeffR4_INC , 0x53a0 ,0x0000}, + { AdaptiveAVParameter_GR_wAvHOffset_INC_LSByte , 0x53a4 ,0x0000}, + { AdaptiveAVParameter_GR_wAvHOffset_INC_MSByte , 0x53a3 ,0x0000}, + { AdaptiveAVParameter_GR_wAvVOffset_INC_LSByte , 0x53a8 ,0x0000}, + { AdaptiveAVParameter_GR_wAvVOffset_INC_MSByte , 0x53a7 ,0x0000}, + { AdaptiveAVParameter_GR_bAvUnityOffset_HOR , 0x53aa ,0x0000}, + { AdaptiveAVParameter_GR_bAvCoeffR2_HOR , 0x53ac ,0x0000}, + { AdaptiveAVParameter_GR_bAvCoeffR4_HOR , 0x53ae ,0x0000}, + { AdaptiveAVParameter_GR_wAvHOffset_HOR_LSByte , 0x53b2 ,0x0000}, + { AdaptiveAVParameter_GR_wAvHOffset_HOR_MSByte , 0x53b1 ,0x0000}, + { AdaptiveAVParameter_GR_wAvVOffset_HOR_LSByte , 0x53b6 ,0x0000}, + { AdaptiveAVParameter_GR_wAvVOffset_HOR_MSByte , 0x53b5 ,0x0000}, +*/ + { AdaptiveAVParameter_GR_bAvUnityOffset_Day , 0x5380, 0x0040 }, { AdaptiveAVParameter_GR_bAvCoeffR2_Day , 0x5382, 0x0048 }, { AdaptiveAVParameter_GR_bAvCoeffR4_Day , 0x5384, 0x00e8 }, { AdaptiveAVParameter_GR_wAvHOffset_Day_LSByte , 0x5388, 0x0000 }, { AdaptiveAVParameter_GR_wAvHOffset_Day_MSByte , 0x5387, 0x0009 }, @@ -5088,10 +7335,42 @@ struct nomadik_vpip_param vpip_default_p { AdaptiveAVParameter_GR_bAvCoeffR4_HOR , 0x53ae, 0x00ef }, { AdaptiveAVParameter_GR_wAvHOffset_HOR_LSByte , 0x53b2, 0x0000 }, { AdaptiveAVParameter_GR_wAvHOffset_HOR_MSByte , 0x53b1, 0x000c }, { AdaptiveAVParameter_GR_wAvVOffset_HOR_LSByte , 0x53b6, 0x0000 }, { AdaptiveAVParameter_GR_wAvVOffset_HOR_MSByte , 0x53b5, 0x0001 }, +// page "AdaptiveAVParameter_R" +// + /* + { AdaptiveAVParameter_R_bAvUnityOffset_Day , 0x5400 ,0x0000}, + { AdaptiveAVParameter_R_bAvCoeffR2_Day , 0x5402 ,0x0000}, + { AdaptiveAVParameter_R_bAvCoeffR4_Day , 0x5404 ,0x0000}, + { AdaptiveAVParameter_R_wAvHOffset_Day_LSByte , 0x5408 ,0x0000}, + { AdaptiveAVParameter_R_wAvHOffset_Day_MSByte , 0x5407 ,0x0000}, + { AdaptiveAVParameter_R_wAvVOffset_Day_LSByte , 0x540c ,0x0000}, + { AdaptiveAVParameter_R_wAvVOffset_Day_MSByte , 0x540b ,0x0000}, + { AdaptiveAVParameter_R_bAvUnityOffset_COO , 0x540e ,0x0000}, + { AdaptiveAVParameter_R_bAvCoeffR2_COO , 0x5410 ,0x0000}, + { AdaptiveAVParameter_R_bAvCoeffR4_COO , 0x5412 ,0x0000}, + { AdaptiveAVParameter_R_wAvHOffset_COO_LSByte , 0x5416 ,0x0000}, + { AdaptiveAVParameter_R_wAvHOffset_COO_MSByte , 0x5415 ,0x0000}, + { AdaptiveAVParameter_R_wAvVOffset_COO_LSByte , 0x541a ,0x0000}, + { AdaptiveAVParameter_R_wAvVOffset_COO_MSByte , 0x5419 ,0x0000}, + { AdaptiveAVParameter_R_bAvUnityOffset_INC , 0x541c ,0x0000}, + { AdaptiveAVParameter_R_bAvCoeffR2_INC , 0x541e ,0x0000}, + { AdaptiveAVParameter_R_bAvCoeffR4_INC , 0x5420 ,0x0000}, + { AdaptiveAVParameter_R_wAvHOffset_INC_LSByte , 0x5424 ,0x0000}, + { AdaptiveAVParameter_R_wAvHOffset_INC_MSByte , 0x5423 ,0x0000}, + { AdaptiveAVParameter_R_wAvVOffset_INC_LSByte , 0x5428 ,0x0000}, + { AdaptiveAVParameter_R_wAvVOffset_INC_MSByte , 0x5427 ,0x0000}, + { AdaptiveAVParameter_R_bAvUnityOffset_HOR , 0x542a ,0x0000}, + { AdaptiveAVParameter_R_bAvCoeffR2_HOR , 0x542c ,0x0000}, + { AdaptiveAVParameter_R_bAvCoeffR4_HOR , 0x542e ,0x0000}, + { AdaptiveAVParameter_R_wAvHOffset_HOR_LSByte , 0x5432 ,0x0000}, + { AdaptiveAVParameter_R_wAvHOffset_HOR_MSByte , 0x5431 ,0x0000}, + { AdaptiveAVParameter_R_wAvVOffset_HOR_LSByte , 0x5436 ,0x0000}, + { AdaptiveAVParameter_R_wAvVOffset_HOR_MSByte , 0x5435 ,0x0000}, + */ { AdaptiveAVParameter_R_bAvUnityOffset_Day , 0x5400, 0x0040 }, { AdaptiveAVParameter_R_bAvCoeffR2_Day , 0x5402, 0x0067 }, { AdaptiveAVParameter_R_bAvCoeffR4_Day , 0x5404, 0x00f6 }, { AdaptiveAVParameter_R_wAvHOffset_Day_LSByte , 0x5408, 0x0000 }, { AdaptiveAVParameter_R_wAvHOffset_Day_MSByte , 0x5407, 0x000a }, @@ -5116,21 +7395,43 @@ struct nomadik_vpip_param vpip_default_p { AdaptiveAVParameter_R_bAvCoeffR4_HOR , 0x542e, 0x00f7 }, { AdaptiveAVParameter_R_wAvHOffset_HOR_LSByte , 0x5432, 0x0000 }, { AdaptiveAVParameter_R_wAvHOffset_HOR_MSByte , 0x5431, 0x000a }, { AdaptiveAVParameter_R_wAvVOffset_HOR_LSByte , 0x5436, 0x0000 }, { AdaptiveAVParameter_R_wAvVOffset_HOR_MSByte , 0x5435, 0x0004 }, + +// page "ContrastStretchControl" +// { ContrastStretchControl_fEnableContrastStretch , 0x5480, 0x0000 }, { ContrastStretchControl_bMode , 0x5482, 0x0000 }, { ContrastStretchControl_bAccColour , 0x5484, 0x0000 }, { ContrastStretchControl_bBlackThreshold , 0x5486, 0x0000 }, { ContrastStretchControl_bWhiteThreshold , 0x5488, 0x0000 }, + +// page "ContrastStretchStatus" [read only] +// { ContrastStretchStatus_uBlackBinAThreshold_hi , 0x5500, 0x0000 }, { ContrastStretchStatus_uBlackBinBThreshold_hi , 0x5502, 0x0000 }, { ContrastStretchStatus_uWhiteBinAThreshold_lo , 0x5504, 0x0000 }, { ContrastStretchStatus_uWhiteBinBThreshold_lo , 0x5506, 0x0000 }, { ContrastStretchStatus_fpGain_LSByte , 0x550a, 0x0000 }, { ContrastStretchStatus_fpGain_MSByte , 0x5509, 0x0000 }, + +// page "DynamicConstrainedWBControls" +// + /* + { DynamicConstrainedWBControls_fpRedA_LSByte , 0x5582 ,0x0000}, + { DynamicConstrainedWBControls_fpRedA_MSByte , 0x5581 ,0x0000}, + { DynamicConstrainedWBControls_fpBlueA_LSByte , 0x5586 ,0x0000}, + { DynamicConstrainedWBControls_fpBlueA_MSByte , 0x5585 ,0x0000}, + { DynamicConstrainedWBControls_fpDamperLowThreshold_LSByte , 0x558a ,0x0000}, + { DynamicConstrainedWBControls_fpDamperLowThreshold_MSByte , 0x5589 ,0x0000}, + { DynamicConstrainedWBControls_fpMinimumDamperOutput_LSByte , 0x558e ,0x0000}, + { DynamicConstrainedWBControls_fpMinimumDamperOutput_MSByte , 0x558d ,0x0000}, + { DynamicConstrainedWBControls_fpDamperHighThreshold_LSByte , 0x5592 ,0x0000}, + { DynamicConstrainedWBControls_fpDamperHighThreshold_MSByte , 0x5591 ,0x0000}, + { DynamicConstrainedWBControls_fDamperDisable , 0x5594 ,0x0000}, +*/ { DynamicConstrainedWBControls_fpRedA_LSByte , 0x5582, 0x0000 }, { DynamicConstrainedWBControls_fpRedA_MSByte , 0x5581, 0x3881 }, { DynamicConstrainedWBControls_fpBlueA_LSByte , 0x5586, 0x0000 }, { DynamicConstrainedWBControls_fpBlueA_MSByte , 0x5585, 0x3c68 }, { DynamicConstrainedWBControls_fpDamperLowThreshold_LSByte , 0x558a, 0x0000 }, @@ -5138,10 +7439,12 @@ struct nomadik_vpip_param vpip_default_p { DynamicConstrainedWBControls_fpMinimumDamperOutput_LSByte , 0x558e, 0x0000 }, { DynamicConstrainedWBControls_fpMinimumDamperOutput_MSByte , 0x558d, 0x3a66 }, { DynamicConstrainedWBControls_fpDamperHighThreshold_LSByte , 0x5592, 0x0000 }, { DynamicConstrainedWBControls_fpDamperHighThreshold_MSByte , 0x5591, 0x5a71 }, { DynamicConstrainedWBControls_fDamperDisable , 0x5594, 0x0000 }, +// page "Toshiba_AF_NVM_Read" +// { Toshiba_AF_NVM_Read_NVM_Far2Near_inf_LSByte , 0x5602, 0x0000 }, { Toshiba_AF_NVM_Read_NVM_Far2Near_inf_MSByte , 0x5601, 0x0000 }, { Toshiba_AF_NVM_Read_NVM_Near2Far_inf_LSByte , 0x5606, 0x0000 }, { Toshiba_AF_NVM_Read_NVM_Near2Far_inf_MSByte , 0x5605, 0x0000 }, { Toshiba_AF_NVM_Read_NVM_Far2Near_mac_LSByte , 0x560a, 0x0000 }, @@ -5150,27 +7453,81 @@ struct nomadik_vpip_param vpip_default_p { Toshiba_AF_NVM_Read_NVM_Near2Far_mac_MSByte , 0x560d, 0x0000 }, { Toshiba_AF_NVM_Read_NVM_Pos_A_LSByte , 0x5612, 0x0000 }, { Toshiba_AF_NVM_Read_NVM_Pos_A_MSByte , 0x5611, 0x0000 }, { Toshiba_AF_NVM_Read_NVM_Pos_B_LSByte , 0x5616, 0x0000 }, { Toshiba_AF_NVM_Read_NVM_Pos_B_MSByte , 0x5615, 0x0000 }, + +// page "Toshiba_Vcm_Parameters" +// +/* + { Toshiba_Vcm_Parameters_wLowLevelMacroPos_LSByte , 0x5682 ,0x0000}, + { Toshiba_Vcm_Parameters_wLowLevelMacroPos_MSByte , 0x5681 ,0x0000}, + { Toshiba_Vcm_Parameters_wLowLevelInfinityPos_LSByte , 0x5686 ,0x0000}, + { Toshiba_Vcm_Parameters_wLowLevelInfinityPos_MSByte , 0x5685 ,0x0000}, + { Toshiba_Vcm_Parameters_bSlewControlModeEnable , 0x5688 ,0x0000}, + { Toshiba_Vcm_Parameters_bSlewModeForSmallerStep , 0x568a ,0x0000}, + { Toshiba_Vcm_Parameters_bSlewRateForSmallerStep , 0x568c ,0x0000}, + { Toshiba_Vcm_Parameters_bSlewModeForLargerStep , 0x568e ,0x0000}, + { Toshiba_Vcm_Parameters_bSlewRateForLargerStep , 0x5690 ,0x0000}, + { Toshiba_Vcm_Parameters_bThresholdStepSize , 0x5692 ,0x0000}, +*/ + + { Toshiba_Vcm_Parameters_wLowLevelMacroPos_LSByte , 0x5682, 0x0000 }, { Toshiba_Vcm_Parameters_wLowLevelMacroPos_MSByte , 0x5681, 0x0000 }, { Toshiba_Vcm_Parameters_wLowLevelInfinityPos_LSByte , 0x5686, 0x0000 }, { Toshiba_Vcm_Parameters_wLowLevelInfinityPos_MSByte , 0x5685, 0x0000 }, { Toshiba_Vcm_Parameters_bSlewControlModeEnable , 0x5688, 0x0000 }, { Toshiba_Vcm_Parameters_bSlewModeForSmallerStep , 0x568a, 0x0001 }, { Toshiba_Vcm_Parameters_bSlewRateForSmallerStep , 0x568c, 0x0004 }, { Toshiba_Vcm_Parameters_bSlewModeForLargerStep , 0x568e, 0x0008 }, { Toshiba_Vcm_Parameters_bSlewRateForLargerStep , 0x5690, 0x0007 }, { Toshiba_Vcm_Parameters_bThresholdStepSize , 0x5692, 0x00b0 }, + + +// page "Toshiba_Vcm_Status" [read only] +// { Toshiba_Vcm_Status_wLowLevelPos_LSByte , 0x5702, 0x0000 }, { Toshiba_Vcm_Status_wLowLevelPos_MSByte , 0x5701, 0x0000 }, + +// page "AdaptiveColourMatrix" +// + + { AdaptiveColourMatrix_fpNormalisedRedGain0_LSByte , 0x5782 ,0x0000}, + { AdaptiveColourMatrix_fpNormalisedRedGain0_MSByte , 0x5781 ,0x0000}, + { AdaptiveColourMatrix_fpNormalisedRedGain1_LSByte , 0x5786 ,0x0000}, + { AdaptiveColourMatrix_fpNormalisedRedGain1_MSByte , 0x5785 ,0x0000}, + { AdaptiveColourMatrix_bChooseAdaptiveColourMatrix , 0x5788 ,0x0000}, +/* { AdaptiveColourMatrix_fpNormalisedRedGain0_LSByte , 0x5782, 0x0000 }, { AdaptiveColourMatrix_fpNormalisedRedGain0_MSByte , 0x5781, 0x3adf }, { AdaptiveColourMatrix_fpNormalisedRedGain1_LSByte , 0x5786, 0x0000 }, { AdaptiveColourMatrix_fpNormalisedRedGain1_MSByte , 0x5785, 0x393f }, { AdaptiveColourMatrix_bChooseAdaptiveColourMatrix , 0x5788, 0x0001 }, +*/ +// page "ColourEngine1_ColourMatrixFarSensor" +// +/* + { ColourEngine1_ColourMatrixFarSensor_fpRInR_LSByte , 0x5802 ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpRInR_MSByte , 0x5801 ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpGInR_LSByte , 0x5806 ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpGInR_MSByte , 0x5805 ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpBInR_LSByte , 0x580a ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpBInR_MSByte , 0x5809 ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpRInG_LSByte , 0x580e ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpRInG_MSByte , 0x580d ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpGInG_LSByte , 0x5812 ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpGInG_MSByte , 0x5811 ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpBInG_LSByte , 0x5816 ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpBInG_MSByte , 0x5815 ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpRInB_LSByte , 0x581a ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpRInB_MSByte , 0x5819 ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpGInB_LSByte , 0x581e ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpGInB_MSByte , 0x581d ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpBInB_LSByte , 0x5822 ,0x0000}, + { ColourEngine1_ColourMatrixFarSensor_fpBInB_MSByte , 0x5821 ,0x0000}, +*/ { ColourEngine1_ColourMatrixFarSensor_fpRInR_LSByte , 0x5802, 0x0000 }, { ColourEngine1_ColourMatrixFarSensor_fpRInR_MSByte , 0x5801, 0x3f0c }, { ColourEngine1_ColourMatrixFarSensor_fpGInR_LSByte , 0x5806, 0x0000 }, { ColourEngine1_ColourMatrixFarSensor_fpGInR_MSByte , 0x5805, 0xb887 }, { ColourEngine1_ColourMatrixFarSensor_fpBInR_LSByte , 0x580a, 0x0000 }, @@ -5185,10 +7542,12 @@ struct nomadik_vpip_param vpip_default_p { ColourEngine1_ColourMatrixFarSensor_fpRInB_MSByte , 0x5819, 0xbc6e }, { ColourEngine1_ColourMatrixFarSensor_fpGInB_LSByte , 0x581e, 0x0000 }, { ColourEngine1_ColourMatrixFarSensor_fpGInB_MSByte , 0x581d, 0xc01b }, { ColourEngine1_ColourMatrixFarSensor_fpBInB_LSByte , 0x5822, 0x0000 }, { ColourEngine1_ColourMatrixFarSensor_fpBInB_MSByte , 0x5821, 0x41b7 }, +// page "ColourEngine1_ColourMatrixNearSensor" +// { ColourEngine1_ColourMatrixNearSensor_fpRInR_LSByte , 0x5882, 0x0000 }, { ColourEngine1_ColourMatrixNearSensor_fpRInR_MSByte , 0x5881, 0x0000 }, { ColourEngine1_ColourMatrixNearSensor_fpGInR_LSByte , 0x5886, 0x0000 }, { ColourEngine1_ColourMatrixNearSensor_fpGInR_MSByte , 0x5885, 0x0000 }, { ColourEngine1_ColourMatrixNearSensor_fpBInR_LSByte , 0x588a, 0x0000 }, @@ -5203,31 +7562,63 @@ struct nomadik_vpip_param vpip_default_p { ColourEngine1_ColourMatrixNearSensor_fpRInB_MSByte , 0x5899, 0x0000 }, { ColourEngine1_ColourMatrixNearSensor_fpGInB_LSByte , 0x589e, 0x0000 }, { ColourEngine1_ColourMatrixNearSensor_fpGInB_MSByte , 0x589d, 0x0000 }, { ColourEngine1_ColourMatrixNearSensor_fpBInB_LSByte , 0x58a2, 0x0000 }, { ColourEngine1_ColourMatrixNearSensor_fpBInB_MSByte , 0x58a1, 0x0000 }, + +// page "WhiteBalanceGainLimit" +// + /* + { WhiteBalanceGainLimit_fpWhiteBalanceGainLimit_LSByte , 0x5902 ,0x0000}, + { WhiteBalanceGainLimit_fpWhiteBalanceGainLimit_MSByte , 0x5901 ,0x0000}, +*/ { WhiteBalanceGainLimit_fpWhiteBalanceGainLimit_LSByte , 0x5902, 0x0000 }, { WhiteBalanceGainLimit_fpWhiteBalanceGainLimit_MSByte , 0x5901, 0x4200 }, +// page "ToshibaTechnicalParamTuner" +// +/* + { ToshibaTechnicalParamTuner_uwHostLevelMacroPos_LSByte , 0x5982 ,0x0000}, + { ToshibaTechnicalParamTuner_uwHostLevelMacroPos_MSByte , 0x5981 ,0x0000}, + { ToshibaTechnicalParamTuner_uwHostLevelInfinityPos_LSByte , 0x5986 ,0x0000}, + { ToshibaTechnicalParamTuner_uwHostLevelInfinityPos_MSByte , 0x5985 ,0x0000}, + { ToshibaTechnicalParamTuner_uwDefAFMaxStandardRange_um_LSByte , 0x598a ,0x0000}, + { ToshibaTechnicalParamTuner_uwDefAFMaxStandardRange_um_MSByte , 0x5989 ,0x0000}, + { ToshibaTechnicalParamTuner_bDefFineStepParam_um , 0x598c ,0x0000}, + { ToshibaTechnicalParamTuner_bDefCoarseStepParam_um , 0x598e ,0x0000}, + { ToshibaTechnicalParamTuner_fHostDefTechParam , 0x5990 ,0x0000}, + */ + + { ToshibaTechnicalParamTuner_uwHostLevelMacroPos_LSByte , 0x5982, 0x0000 }, { ToshibaTechnicalParamTuner_uwHostLevelMacroPos_MSByte , 0x5981, 0x0000 }, { ToshibaTechnicalParamTuner_uwHostLevelInfinityPos_LSByte , 0x5986, 0x0000 }, { ToshibaTechnicalParamTuner_uwHostLevelInfinityPos_MSByte , 0x5985, 0x0000 }, { ToshibaTechnicalParamTuner_uwDefAFMaxStandardRange_um_LSByte , 0x598a, 0x0000 }, { ToshibaTechnicalParamTuner_uwDefAFMaxStandardRange_um_MSByte , 0x5989, 0x012c }, { ToshibaTechnicalParamTuner_bDefFineStepParam_um , 0x598c, 0x0008 }, { ToshibaTechnicalParamTuner_bDefCoarseStepParam_um , 0x598e, 0x0030 }, { ToshibaTechnicalParamTuner_fHostDefTechParam , 0x5990, 0x0002 }, -{ IRPLastPreviewWOI_X_Byte0 , 0x800c, 0x0000 }, + + + + + { IRPLastPreviewWOI_X_Byte0 , 0x800C ,0x0000}, { IRPLastPreviewWOI_X_Byte1 , 0x800e, 0x0000 }, { IRPLastPreviewWOI_X_Byte2 , 0x8010, 0x0000 }, { IRPLastPreviewWOI_X_Byte3 , 0x8012, 0x0000 }, -{ ModeSetupBank2_bActiveSensor , 0x3b18, 0x0002 }, + + //additional defs was present earlier but not defined now + { ModeSetupBank2_bActiveSensor , 0x3b18,0x2}, //0x3718 { ModeSetupBank3_bActiveSensor , 0x3b98,0x2}, + }; + + + int sva_vpip_auto_focus(struct sva_device_open *open, struct vpip_autofocus_id *mode) { struct sva_service_open *srv_open; u16 vpip_state=0; @@ -6232,67 +8623,16 @@ static int irp_start_fw(struct sva_servi IRP_ASSERT(irp_write_packet(srv_open, vpip_default_params[VfpnControls_bLogThreshLog].addr,vpip_default_params[VfpnControls_bLogThreshLog].val));// 0x4)); IRP_ASSERT(irp_write_packet(srv_open, vpip_default_params[AntiFlickerExposureControls_bMainsFrequency_Hz].addr,vpip_default_params[AntiFlickerExposureControls_bMainsFrequency_Hz].val));// 0x32)); + for(vpip_update_iteration=0;vpip_update_iteration<2207;vpip_update_iteration++){//1836 switch (vpip_update_iteration) { - /* these are control register has to be update during ewarp boot only - case SystemConfiguration_fNearSensorPresent : - case SystemConfiguration_fFarSensorPresent : - case SystemConfiguration_CcpRxForNearSensor : - case SystemConfiguration_CcpRxForFarSensor : - case SystemConfiguration_uwExternalClockFrequency_Mhz_num_MSByte : - case SystemConfiguration_bExternalClockFrequency_Mhz_den : - case MasterI2cControl_uwRequiredI2cSpeed_MSByte : - case MiscPageElements_bDelayAfterSettingXshutdown : - case MiscPageElements_fConvertMultiByteReadsIntoSingleByte : - case ModeSetupBank0_bActiveSensor : - case ModeSetupBank1_bActiveSensor : - case VideoTimingInputsNearSensor_VideoTimingMode : - case VideoTimingInputsNearSensor_fpHostRxMaxDataRate_Mbps_MSByte : - case VideoTimingInputsNearSensor_uwCsiRawFormat_MSByte : - case VideoTimingInputsNearSensor_bSensorBitsPerSystemClock : - case VideoTimingInputsFarSensor_VideoTimingMode : - case VideoTimingInputsFarSensor_fpHostRxMaxDataRate_Mbps_MSByte : - case VideoTimingInputsFarSensor_uwCsiRawFormat_MSByte : - case VideoTimingInputsFarSensor_bSensorBitsPerSystemClock : - case VideoTimingHostInputs_VideoTimingMode : - case VideoTimingHostInputs_bSensorBitsPerSystemClock : - case VideoTimingHostInputs_uwCsiRawFormat_MSByte : - case VideoTimingHostInputs_fpHostRxMaxDataRate_Mbps_MSByte : - case SystemConfiguration_fFocusLensActuatorOnSensorNearPresent : - case SystemConfiguration_fFocusLensActuatorOnSensorFarPresent : - case FLADriverLowLevelParameters_AutoSkipNextFrame : - case FLADriverLowLevelParameters_bMaxNumberRetries : - case FLADriverLowLevelParameters_fOverwriteLowLevelLimits : - case FLADriverLowLevelParameters_fLowLevelDriverInitialized : - case BinningControl_fEnableBinning : - case PipeSetupBankA_uwPipeOutputSize_X_MSByte : - case PipeSetupBankA_uwPipeOutputSize_Y_MSByte : - case PipeSetupBankA_bPipeOutputFormat : - case PipeSetupBankA_bPipeStreamLength : - case PipeSetupBankA_fTogglePixValid : - case PipeSetupBankA_fEnableItuEmbeddedCodes : - case PipeSetupBankA_bPixValidLineTypes : - case PipeSetupBankA_fGenerateVSync : - case PipeSetupBankA_fCb_Cr_Flip : - case PipeSetupBankA_fY_CbCr_Flip : - case StaticFrameRateControl_uwDesiredFrameRate_Num_MSByte : - case RunModeControl_fMeteringOn : - case RunModeControl_bStreamLength : - case HostToSensorAccessControl_bRequest: - case HostToSensorAccessControl_uwSensorIndex_MSByte: - case HostToSensorAccessData_uwDataLow_LSByte: - case HostToSensorAccessControl_bCommandCoin: - printk("not written val of i: %d\n",vpip_update_iteration); - - break; - */ /** Update only configuration registers */ case PipeSetupBankB_fCb_Cr_Flip : @@ -6308,10 +8648,11 @@ static int irp_start_fw(struct sva_servi case SensorCapabilitiesFarSensor_uwSensorAnalogGainMaximum_MSByte : case SensorCapabilitiesFarSensor_uwSensorDataPedestal_MSByte : case SensorCapabilitiesCurrentSensor_uwSensorAnalogGainMinimum_MSByte : case SensorCapabilitiesCurrentSensor_uwSensorAnalogGainMaximum_MSByte : case FlashManagerControl_bMode : + case FlashManagerControl_bFlashType : case FlashManagerControl_fOrMainAndPreFlashPulse : case FlashManagerControl_RefPointCalcMode : case FlashManagerControl_wIntegrationStartPosition_MSByte : case FlashManagerControl_fOverrideIntegrationStartPosition : @@ -6325,12 +8666,10 @@ static int irp_start_fw(struct sva_servi case FlashManagerControl_wMainFlashStartLine_MSByte : case FlashManagerControl_wMainFlashStartPixel_MSByte : case FlashManagerControl_cPreFlashStartFrame : case FlashManagerControl_wPreFlashStartLine_MSByte : case FlashManagerControl_wPreFlashStartPixel_MSByte : - - case FlashManagerControl_bTotalFramesRequired : case ExposureControls_bMode : case ExposureControls_bMetering : case ExposureControls_fpColdStartDesiredTime_us_MSByte : case ExposureControls_iExposureCompensation : @@ -6346,10 +8685,12 @@ static int irp_start_fw(struct sva_servi case ExposureControls_fEnableHighClipForDesiredExposureTime : case ExposureControls_bAntiFlickerMode : case ExposureControls_fInhibitExposurePresetModeForFlash : case ExposureAlgorithmControls_fpDigitalGainFloor_MSByte : case ExposureAlgorithmControls_fpDigitalGainCeiling_MSByte : +// + case WhiteBalanceControls_bMode : case WhiteBalanceControls_bManualRedGain : case WhiteBalanceControls_bManualGreenGain : case WhiteBalanceControls_bManualBlueGain : case WhiteBalanceControls_bMiscSettings : @@ -6374,12 +8715,13 @@ static int irp_start_fw(struct sva_servi case AutomaticFrameRateControl_bUserMaximumFrameRate_Hz : case AutomaticFrameRateControl_bRelativeChange_num : case AutomaticFrameRateControl_bRelativeChange_den : case AutomaticFrameRateControl_fDivorceMinFrameRateFromMaxIntegration : - +#if CAM_IQ_TUNING case StaticFrameRateControl_bDesiredFrameRate_Den : +#endif case ColourEngine0_ColourMatrixFarSensor_fpRInR_MSByte : case ColourEngine0_ColourMatrixFarSensor_fpGInR_MSByte : case ColourEngine0_ColourMatrixFarSensor_fpBInR_MSByte : case ColourEngine0_ColourMatrixFarSensor_fpRInG_MSByte : case ColourEngine0_ColourMatrixFarSensor_fpGInG_MSByte : @@ -6419,10 +8761,11 @@ static int irp_start_fw(struct sva_servi case ColourEngine0_GammaCorrection_SharpBlue : case ColourEngine0_GammaCorrection_SoftRed : case ColourEngine0_GammaCorrection_SoftGreen : case ColourEngine0_GammaCorrection_SoftBlue : + case NoraControls_fDisable : case NoraControls_fDisableNoraPromoting : case NoraControls_bMaximumValue : case NoraControls_fDifferentTextureDegreeForBlue : case NoraControls_fSplitNoiseLevel : @@ -6440,10 +8783,12 @@ static int irp_start_fw(struct sva_servi case ScytheFilterControls_fpDamperLowThresholdHigh_MSByte : case ScytheFilterControls_fpDamperHighThresholdLow_MSByte : case ScytheFilterControls_fpDamperHighThresholdHigh_MSByte : case ScytheFilterControls_fpMinimumDamperOutputLow_MSByte : case ScytheFilterControls_fpMinimumDamperOutputHigh_MSByte : +// + case JackFilterControls_fDisableFilter : case JackFilterControls_fSquareLaw : case JackFilterControls_fDisablePromotingLow : case JackFilterControls_fDisablePromotingHigh : case JackFilterControls_bMaxWeightLow : @@ -6452,10 +8797,15 @@ static int irp_start_fw(struct sva_servi case JackFilterControls_fpDamperLowThresholdHigh_MSByte : case JackFilterControls_fpDamperHighThresholdLow_MSByte : case JackFilterControls_fpDamperHighThresholdHigh_MSByte : case JackFilterControls_fpMinimumDamperOutputLow_MSByte : case JackFilterControls_fpMinimumDamperOutputHigh_MSByte : +// +// + + + case AntiVignetteControls_fDisableFilter : case AntiVignetteControls_bFilterCoeff_R2_r : case AntiVignetteControls_bFilterCoeff_R2_gr : case AntiVignetteControls_bFilterCoeff_R2_gb : case AntiVignetteControls_bFilterCoeff_R2_b : @@ -6478,10 +8828,13 @@ static int irp_start_fw(struct sva_servi case AntiVignetteControls_bUnityOffset_r : case AntiVignetteControls_bUnityOffset_gr : case AntiVignetteControls_bUnityOffset_gb : case AntiVignetteControls_bUnityOffset_b : case AntiVignetteControls_fAdaptiveAntiVignetteEnable : + + + case ColourEngine0_RadialApertureCorrectionControl_fEnableCorrection : case ColourEngine0_RadialApertureCorrectionHostInputs_bQvec0 : case ColourEngine0_RadialApertureCorrectionHostInputs_bQvec1 : case ColourEngine0_RadialApertureCorrectionHostInputs_bCofShift : case ColourEngine0_RadialApertureCorrectionHostInputs_bOutShift : @@ -6495,26 +8848,30 @@ static int irp_start_fw(struct sva_servi case ColourEngine0_CoderOutputSignalRange_uwChromaMidpointTimes2_MSByte : case ColourEngine0_FadeToBlack_fDisable : case ColourEngine0_FadeToBlack_fpBlackValue_MSByte : case ColourEngine0_FadeToBlack_fpDamperLowThreshold_MSByte : case ColourEngine0_FadeToBlack_fpDamperHighThreshold_MSByte : + case WhiteBalanceConstrainerControls_fpRedB_MSByte : case WhiteBalanceConstrainerControls_fpBlueB_MSByte : case WhiteBalanceConstrainerControls_fpMaximumDistanceAllowedFromLocus_MSByte : case WhiteBalanceConstrainerControls_fEnableConstrainedWhiteBalance : case WhiteBalanceGainLimit_fpWhiteBalanceGainLimit_MSByte : case FLADriverLowLevelParameters_bFramesToSkip : + + case FocusRangeConstants_wFullRange_LensMinPosition_MSByte : case FocusRangeConstants_wFullRange_LensMaxPosition_MSByte : case FocusRangeConstants_wFullRange_LensRecoveryPosition_MSByte : case FocusRangeConstants_wLandscape_LensMinPosition_MSByte : case FocusRangeConstants_wLandscape_LensMaxPosition_MSByte : case FocusRangeConstants_wLandscape_LensRecoveryPosition_MSByte : case FocusRangeConstants_wMacro_LensMinPosition_MSByte : case FocusRangeConstants_wMacro_LensMaxPosition_MSByte : case FocusRangeConstants_wMacro_LensRecoveryPosition_MSByte : + case AutoFocusControls_fFMTesting_AutoDisable : case AutoFocusControls_fBackLight_Enable : case AutoFocusControls_fBackupSolution : case AutoFocusControls_fCheckExposureStable_Enable : case AutoFocusControls_fEnableSimpleCoarseThEvaluation : @@ -6531,25 +8888,33 @@ static int irp_start_fw(struct sva_servi case AutoFocusControls_fEnableTrakingZoneVariation : case AutoFocusControls_fEnableFunctionThresholdTest : case AutoFocusControls_fResetHCSPos : case AutoFocusConstants_bCoarseStep : case AutoFocusConstants_bFineStep : + + case ToshibaTechnicalParamTuner_uwDefAFMaxStandardRange_um_MSByte : case ToshibaTechnicalParamTuner_bDefFineStepParam_um : case ToshibaTechnicalParamTuner_bDefCoarseStepParam_um : case ToshibaTechnicalParamTuner_fHostDefTechParam : + + case SensorSetupFarSensor_uwGuaranteedDataSaturationLevel_MSByte : case SensorSetupFarSensor_uwMinimumSensorRxPixelValue_MSByte : case SensorSetupFarSensor_uwMaximumSensorRxPixelValue_MSByte : case SensorSetupFarSensor_fpRedTiltGain_MSByte : case SensorSetupFarSensor_fpGreenTiltGain_MSByte : case SensorSetupFarSensor_fpBlueTiltGain_MSByte : case SensorSetupFarSensor_BlackCorrectionOffset : +// + case ReferenceIlluminantCasts_fpCAST0_MSByte : case ReferenceIlluminantCasts_fpCAST1_MSByte : case ReferenceIlluminantCasts_fpCAST2_MSByte : case ReferenceIlluminantCasts_fpCAST3_MSByte : + + case AdaptiveAVParameter_B_bAvUnityOffset_Day : case AdaptiveAVParameter_B_bAvCoeffR2_Day : case AdaptiveAVParameter_B_bAvCoeffR4_Day : case AdaptiveAVParameter_B_wAvHOffset_Day_MSByte : case AdaptiveAVParameter_B_wAvVOffset_Day_MSByte : @@ -6626,31 +8991,37 @@ static int irp_start_fw(struct sva_servi case AdaptiveAVParameter_R_bAvUnityOffset_HOR : case AdaptiveAVParameter_R_bAvCoeffR2_HOR : case AdaptiveAVParameter_R_bAvCoeffR4_HOR : case AdaptiveAVParameter_R_wAvHOffset_HOR_MSByte : case AdaptiveAVParameter_R_wAvVOffset_HOR_MSByte : + case ContrastStretchControl_fEnableContrastStretch : case ContrastStretchControl_bMode : case ContrastStretchControl_bAccColour : case ContrastStretchControl_bBlackThreshold : case ContrastStretchControl_bWhiteThreshold : + case DynamicConstrainedWBControls_fpRedA_MSByte : case DynamicConstrainedWBControls_fpBlueA_MSByte : case DynamicConstrainedWBControls_fpDamperLowThreshold_MSByte : case DynamicConstrainedWBControls_fpMinimumDamperOutput_MSByte : case DynamicConstrainedWBControls_fpDamperHighThreshold_MSByte : case DynamicConstrainedWBControls_fDamperDisable : +#if CAM_IQ_TUNING case WhiteBalanceAlgorithmControls_fpStableTotalStepThreshold_MSByte : case WhiteBalanceAlgorithmControls_fpMinimumRelativeStep_MSByte : case WhiteBalanceAlgorithmControls_fpMaximumRelativeStep_MSByte : case WhiteBalanceAlgorithmControls_fpStepProportion_MSByte : +#endif + case Toshiba_Vcm_Parameters_bSlewControlModeEnable : case Toshiba_Vcm_Parameters_bSlewModeForSmallerStep : case Toshiba_Vcm_Parameters_bSlewRateForSmallerStep : case Toshiba_Vcm_Parameters_bSlewModeForLargerStep : case Toshiba_Vcm_Parameters_bSlewRateForLargerStep : case Toshiba_Vcm_Parameters_bThresholdStepSize : + case AdaptiveColourMatrix_fpNormalisedRedGain0_MSByte : case AdaptiveColourMatrix_fpNormalisedRedGain1_MSByte : case AdaptiveColourMatrix_bChooseAdaptiveColourMatrix: IRP_ASSERT(irp_write_packet(srv_open, vpip_default_params[vpip_update_iteration].addr,vpip_default_params[vpip_update_iteration].val));// 0)); @@ -6665,10 +9036,13 @@ static int irp_start_fw(struct sva_servi //IRP_ASSERT(irp_write_packet(srv_open, vpip_default_params[vpip_update_iteration].addr,vpip_default_params[vpip_update_iteration].val));// 0)); break; } + + + } @@ -6679,10 +9053,12 @@ static int irp_start_fw(struct sva_servi + + /* debug: depict whether the firmware was able to talk to sensor */ IRP_ASSERT(irp_read_packet(srv_open, vpip_default_params[SensorInformation_fFarSensorAvailable].addr, &vpip_state)); dbgprintk(1,"checking for SensorInformation=%d FAR sensor state \n", vpip_state); IRP_ASSERT(irp_read_packet(srv_open, vpip_default_params[SensorInformation_fNearSensorAvailable].addr, &vpip_state)); dbgprintk(1,"checking for SensorInformation=%d NEAR sensor state \n", vpip_state); --- linux-2.6.20.orig/drivers/media/video/v4l2-nomadik.c +++ linux-2.6.20/drivers/media/video/v4l2-nomadik.c @@ -36,11 +36,11 @@ MODULE_PARM_DESC(v4l2_nomadik_debug,"Deb } while(0) struct v4l2_sva_dev *dev; extern struct sva_device sva; static struct semaphore driver_mutex; -int g_prescale=0; +int g_prescale=2; extern struct nomadik_vpip_param vpip_default_params[];//defined in nomadik_sva_vpip.c extern int VPIP_VERSION; int sva_vpip_auto_focus(struct sva_device_open *open, struct vpip_autofocus_id *mode);