Message ID | 20241121085800.3208123-3-chenghaoyang@chromium.org |
---|---|
State | Accepted |
Headers | show |
Series |
|
Related | show |
Quoting Harvey Yang (2024-11-21 08:57:17) > From: Harvey Yang <chenghaoyang@google.com> > > Provide the GalaxyCore gc08a3 camera sensor properties and registration > with libipa for the gain code helpers. > > Signed-off-by: Han-Lin Chen <hanlinchen@chromium.org> > Co-developed-by: Xing Gu <xinggu@chromium.org> > Co-developed-by: Yudhistira Erlandinata <yerlandinata@chromium.org> > Co-developed-by: Harvey Yang <chenghaoyang@chromium.org> > --- > src/ipa/libipa/camera_sensor_helper.cpp | 13 +++++++++++++ > src/libcamera/sensor/camera_sensor_properties.cpp | 7 +++++++ > 2 files changed, 20 insertions(+) > > diff --git a/src/ipa/libipa/camera_sensor_helper.cpp b/src/ipa/libipa/camera_sensor_helper.cpp > index 3067d9bc1..e2da07723 100644 > --- a/src/ipa/libipa/camera_sensor_helper.cpp > +++ b/src/ipa/libipa/camera_sensor_helper.cpp > @@ -532,6 +532,19 @@ public: > }; > REGISTER_CAMERA_SENSOR_HELPER("gc05a2", CameraSensorHelperGc05a2) > > +class CameraSensorHelperGc08a3 : public CameraSensorHelper > +{ > +public: > + CameraSensorHelperGc08a3() > + { > + /* From datasheet: 64 at 10bits. */ > + blackLevel_ = 4096; Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> > + gainType_ = AnalogueGainLinear; > + gainConstants_.linear = { 100, 0, 0, 1024 }; > + } > +}; > +REGISTER_CAMERA_SENSOR_HELPER("gc08a3", CameraSensorHelperGc08a3) > + > class CameraSensorHelperImx214 : public CameraSensorHelper > { > public: > diff --git a/src/libcamera/sensor/camera_sensor_properties.cpp b/src/libcamera/sensor/camera_sensor_properties.cpp > index 2f048d4a3..a15004341 100644 > --- a/src/libcamera/sensor/camera_sensor_properties.cpp > +++ b/src/libcamera/sensor/camera_sensor_properties.cpp > @@ -77,6 +77,13 @@ const CameraSensorProperties *CameraSensorProperties::get(const std::string &sen > { controls::draft::TestPatternModeColorBars, 1 }, > }, > } }, > + { "gc08a3", { > + .unitCellSize = { 1120, 1120 }, > + .testPatternModes = { > + { controls::draft::TestPatternModeOff, 0 }, > + { controls::draft::TestPatternModeColorBars, 2 }, > + }, > + } }, > { "hi846", { > .unitCellSize = { 1120, 1120 }, > .testPatternModes = { > -- > 2.47.0.338.g60cca15819-goog >
diff --git a/src/ipa/libipa/camera_sensor_helper.cpp b/src/ipa/libipa/camera_sensor_helper.cpp index 3067d9bc1..e2da07723 100644 --- a/src/ipa/libipa/camera_sensor_helper.cpp +++ b/src/ipa/libipa/camera_sensor_helper.cpp @@ -532,6 +532,19 @@ public: }; REGISTER_CAMERA_SENSOR_HELPER("gc05a2", CameraSensorHelperGc05a2) +class CameraSensorHelperGc08a3 : public CameraSensorHelper +{ +public: + CameraSensorHelperGc08a3() + { + /* From datasheet: 64 at 10bits. */ + blackLevel_ = 4096; + gainType_ = AnalogueGainLinear; + gainConstants_.linear = { 100, 0, 0, 1024 }; + } +}; +REGISTER_CAMERA_SENSOR_HELPER("gc08a3", CameraSensorHelperGc08a3) + class CameraSensorHelperImx214 : public CameraSensorHelper { public: diff --git a/src/libcamera/sensor/camera_sensor_properties.cpp b/src/libcamera/sensor/camera_sensor_properties.cpp index 2f048d4a3..a15004341 100644 --- a/src/libcamera/sensor/camera_sensor_properties.cpp +++ b/src/libcamera/sensor/camera_sensor_properties.cpp @@ -77,6 +77,13 @@ const CameraSensorProperties *CameraSensorProperties::get(const std::string &sen { controls::draft::TestPatternModeColorBars, 1 }, }, } }, + { "gc08a3", { + .unitCellSize = { 1120, 1120 }, + .testPatternModes = { + { controls::draft::TestPatternModeOff, 0 }, + { controls::draft::TestPatternModeColorBars, 2 }, + }, + } }, { "hi846", { .unitCellSize = { 1120, 1120 }, .testPatternModes = {