class Imx227Device

Defined at line 65 of file ../../src/camera/drivers/sensors/imx227/imx227.h

Protected Members

I2cChannel i2c_
WireSyncClient gpio_vana_enable_
WireSyncClient gpio_vdig_enable_
WireSyncClient gpio_cam_rst_
WireSyncClient clk24_
MipiCsiProtocolClient mipi_

Public Methods

fpromise::result<zx::vmo, zx_status_t> OtpRead ()

Read the sensor's entire OTP memory.

Returns:

A result with a vmo containing the OTP blob if the read succeeded. Otherwise returns a

result with an error code.

Defined at line 16 of file ../../src/camera/drivers/sensors/imx227/imx227_otp.cc

zx_status_t CameraSensor2GetAvailableModes (operating_mode_t * out_modes_list, size_t modes_count, size_t * out_modes_actual)

Defined at line 70 of file ../../src/camera/drivers/sensors/imx227/imx227_protocol.cc

void Imx227Device (zx_device_t * device, fidl::ClientEnd<fuchsia_hardware_clock::Clock> clk24, fidl::ClientEnd<fuchsia_hardware_gpio::Gpio> gpio_vana_enable, fidl::ClientEnd<fuchsia_hardware_gpio::Gpio> gpio_vdig_enable, fidl::ClientEnd<fuchsia_hardware_gpio::Gpio> gpio_cam_rst)

Defined at line 68 of file ../../src/camera/drivers/sensors/imx227/imx227.h

bool OtpValidate (const zx::vmo & vmo)

Validates the integrity of the data written to the OTP. A checksum is calculated from the

written data and checked against a hard-coded value.

Args:

|vmo| VMO of data to be validated

Returns:

Whether the OTP data validated successfully.

Defined at line 71 of file ../../src/camera/drivers/sensors/imx227/imx227_otp.cc

zx_status_t CameraSensor2Init ()

|ZX_PROTOCOL_CAMERA_SENSOR2|

Defined at line 27 of file ../../src/camera/drivers/sensors/imx227/imx227_protocol.cc

zx_status_t CameraSensor2DeInit ()

Defined at line 39 of file ../../src/camera/drivers/sensors/imx227/imx227_protocol.cc

zx_status_t CameraSensor2GetSensorId (uint32_t * out_id)

Defined at line 56 of file ../../src/camera/drivers/sensors/imx227/imx227_protocol.cc

bool IsSensorOutOfReset ()

Defined at line 87 of file ../../src/camera/drivers/sensors/imx227/imx227.h

void CycleReset ()

Expose function for testing

Defined at line 94 of file ../../src/camera/drivers/sensors/imx227/imx227.h

zx_status_t Create (zx_device_t * parent, std::unique_ptr<Imx227Device> * device_out)

Defined at line 596 of file ../../src/camera/drivers/sensors/imx227/imx227.cc

zx_status_t CreateAndBind (void * ctx, zx_device_t * parent)

Defined at line 657 of file ../../src/camera/drivers/sensors/imx227/imx227.cc

bool RunUnitTests (void * ctx, zx_device_t * parent, zx_handle_t channel)

Defined at line 677 of file ../../src/camera/drivers/sensors/imx227/imx227.cc

void DdkRelease ()

Methods required by the ddk mixins

Defined at line 652 of file ../../src/camera/drivers/sensors/imx227/imx227.cc

zx_status_t CameraSensor2SetMode (uint32_t mode)

Defined at line 109 of file ../../src/camera/drivers/sensors/imx227/imx227_protocol.cc

zx_status_t CameraSensor2StartStreaming ()

Defined at line 147 of file ../../src/camera/drivers/sensors/imx227/imx227_protocol.cc

void CameraSensor2StopStreaming ()

Defined at line 159 of file ../../src/camera/drivers/sensors/imx227/imx227_protocol.cc

zx_status_t CameraSensor2GetAnalogGain (float * out_gain)

Defined at line 169 of file ../../src/camera/drivers/sensors/imx227/imx227_protocol.cc

zx_status_t CameraSensor2SetAnalogGain (float gain, float * out_gain)

Defined at line 186 of file ../../src/camera/drivers/sensors/imx227/imx227_protocol.cc

zx_status_t CameraSensor2GetDigitalGain (float * out_gain)

Defined at line 204 of file ../../src/camera/drivers/sensors/imx227/imx227_protocol.cc

zx_status_t CameraSensor2SetDigitalGain (float gain, float * out_gain)

Defined at line 221 of file ../../src/camera/drivers/sensors/imx227/imx227_protocol.cc

zx_status_t CameraSensor2GetIntegrationTime (float * out_int_time)

Defined at line 239 of file ../../src/camera/drivers/sensors/imx227/imx227_protocol.cc

zx_status_t CameraSensor2SetIntegrationTime (float int_time, float * out_int_time)

Defined at line 253 of file ../../src/camera/drivers/sensors/imx227/imx227_protocol.cc

zx_status_t CameraSensor2Update ()

Defined at line 272 of file ../../src/camera/drivers/sensors/imx227/imx227_protocol.cc

zx_status_t CameraSensor2GetOtpSize (uint32_t * out_size)

Defined at line 311 of file ../../src/camera/drivers/sensors/imx227/imx227_protocol.cc

zx_status_t CameraSensor2GetOtpData (uint32_t byte_count, uint32_t offset, zx::vmo * out_otp_data)

Defined at line 316 of file ../../src/camera/drivers/sensors/imx227/imx227_protocol.cc

zx_status_t CameraSensor2GetTestPatternMode (uint16_t * out_value)

Defined at line 334 of file ../../src/camera/drivers/sensors/imx227/imx227_protocol.cc

zx_status_t CameraSensor2SetTestPatternMode (uint16_t mode)

Defined at line 346 of file ../../src/camera/drivers/sensors/imx227/imx227_protocol.cc

zx_status_t CameraSensor2GetTestPatternData (color_val_t * out_data)

Defined at line 361 of file ../../src/camera/drivers/sensors/imx227/imx227_protocol.cc

zx_status_t CameraSensor2SetTestPatternData (const color_val_t * data)

Defined at line 365 of file ../../src/camera/drivers/sensors/imx227/imx227_protocol.cc

zx_status_t CameraSensor2GetTestCursorData (rect_t * out_data)

Defined at line 369 of file ../../src/camera/drivers/sensors/imx227/imx227_protocol.cc

zx_status_t CameraSensor2SetTestCursorData (const rect_t * data)

Defined at line 373 of file ../../src/camera/drivers/sensors/imx227/imx227_protocol.cc

zx_status_t CameraSensor2GetExtensionValue (uint64_t id, extension_value_data_type_t * out_value)

Defined at line 377 of file ../../src/camera/drivers/sensors/imx227/imx227_protocol.cc

zx_status_t CameraSensor2SetExtensionValue (uint64_t id, const extension_value_data_type_t * value, extension_value_data_type_t * out_value)

Defined at line 471 of file ../../src/camera/drivers/sensors/imx227/imx227_protocol.cc

Protected Methods

zx_status_t InitPdev ()

Other

Defined at line 66 of file ../../src/camera/drivers/sensors/imx227/imx227.cc

fpromise::result<uint8_t, zx_status_t> GetRegisterValueFromSequence (uint8_t index, uint16_t address)

Gets the register value from the sequence table.

|id| : Index of the sequence table.

|address| : Address of the register.

Defined at line 30 of file ../../src/camera/drivers/sensors/imx227/imx227.cc

fpromise::result<uint16_t, zx_status_t> GetRegisterValueFromSequence16 (uint8_t index, uint16_t address)

Gets a 16-bit register value from the sequence table, high byte first.

|id| : Index of the sequence table.

|address| : Address of the register.

Defined at line 52 of file ../../src/camera/drivers/sensors/imx227/imx227.cc