[libcamera-devel] [RFC PATCH v2 0/5] Report available test pattern modes

Hirokazu Honda hiroh at chromium.org
Tue Apr 13 09:50:08 CEST 2021


This patch series aims that Android HAL client can acquire
available test pattern modes.

The proper solution is the following:
0.) Define libcamera test pattern control values.
1.) Add menu support to controls.
2.) V4L2Device store all supported test pattern values with controls.
3.) CameraSensor gets the test pattern values (name, etc) via
V4L2Device::controls().
4.) CameraSensor converts them to libcamera test pattern control
values by using a conversion table in CameraSensorDatabase
5.) IPU3 reports the libcamera test pattern control values to Android HAL.
6.) Android HAL convers the libcamera test pattern control values to
Android test pattern values.

Right now, this patch series contains (1) - (5).
Note that I would rather split this to multiple patch series
later once this solution is approved by reviewers.

Hirokazu Honda (5):
  libcamera: Controls: Add ControlTypeMenu
  libcamera: V4L2Device: Support v4l2 menu control
  libcamera: SensorDatabase: Adds table of v4l2 name and test pattern
  libcamera: CameraSensor: Attach available test pattern modes
  libcamera: pipeline: ipu3: Report available sensor test pattern mode

 include/libcamera/controls.h                 |  28 +++++
 include/libcamera/internal/camera_sensor.h   |   2 +
 include/libcamera/internal/sensor_database.h |   2 +
 include/libcamera/internal/v4l2_controls.h   |   1 +
 include/libcamera/internal/v4l2_device.h     |   3 +
 src/libcamera/camera_sensor.cpp              |  38 +++++++
 src/libcamera/controls.cpp                   |   7 ++
 src/libcamera/pipeline/ipu3/ipu3.cpp         |  12 +++
 src/libcamera/sensor_database.cpp            |  37 ++++++-
 src/libcamera/v4l2_controls.cpp              |  10 +-
 src/libcamera/v4l2_device.cpp                | 104 ++++++++++++++++++-
 11 files changed, 235 insertions(+), 9 deletions(-)

--
2.31.1.295.g9ea45b61b8-goog


More information about the libcamera-devel mailing list