[v2,0/6] Centralise common functions in IPA modules
mbox series

Message ID 20241107102508.48322-1-dan.scally@ideasonboard.com
Headers show
Series
  • Centralise common functions in IPA modules
Related show

Message

Dan Scally Nov. 7, 2024, 10:25 a.m. UTC
Hello all

This series attempts to centralise some common things that are cropping up in
multiple different IPAs. A helpers file is added for functions to be defined in
that can be used in each IPA module so that a single common implementation is
used across the board. Additionally the common hardcoding of default sensor
delay values in pipeline handlers is switched to using values from the sensor's
CameraSensorProperties class - the values there are those from the Rpi handler
if available, or the defaults otherwise.

Thanks
Dan

Daniel Scally (6):
  ipa: libipa: Add miscellaneous helpers
  ipa: ipu3: Use centralised libipa helpers
  ipa: rkisp1: Use centralised libipa helpers
  ipa: rpi: Use centralised libipa helpers
  libcamera: camera_sensor_properties: Add sensor control delays
  libcamera: pipelines: Draw control delays from CameraSensor properties

 include/libcamera/internal/camera_sensor.h    |   2 +
 .../internal/camera_sensor_properties.h       |   9 +
 src/ipa/ipu3/algorithms/agc.cpp               |   7 +-
 src/ipa/ipu3/algorithms/awb.cpp               |  32 +---
 src/ipa/ipu3/algorithms/awb.h                 |   1 -
 src/ipa/libipa/helpers.cpp                    |  77 ++++++++
 src/ipa/libipa/helpers.h                      |  21 +++
 src/ipa/libipa/meson.build                    |   2 +
 src/ipa/rkisp1/algorithms/awb.cpp             |  18 +-
 src/ipa/rkisp1/algorithms/awb.h               |   2 -
 src/ipa/rpi/controller/rpi/agc_channel.cpp    |  10 +-
 src/libcamera/pipeline/ipu3/ipu3.cpp          |  12 +-
 src/libcamera/pipeline/rkisp1/rkisp1.cpp      |  13 +-
 src/libcamera/pipeline/simple/simple.cpp      |   8 +-
 src/libcamera/sensor/camera_sensor.cpp        |  33 ++++
 .../sensor/camera_sensor_properties.cpp       | 167 ++++++++++++++++++
 16 files changed, 342 insertions(+), 72 deletions(-)
 create mode 100644 src/ipa/libipa/helpers.cpp
 create mode 100644 src/ipa/libipa/helpers.h