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

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

Message

Daniel Scally Oct. 31, 2024, 4:07 p.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

 .../internal/camera_sensor_properties.h       |  13 ++
 src/ipa/ipu3/algorithms/agc.cpp               |   7 +-
 src/ipa/ipu3/algorithms/awb.cpp               |  34 +---
 src/ipa/ipu3/algorithms/awb.h                 |   1 -
 src/ipa/libipa/helpers.cpp                    | 103 +++++++++++
 src/ipa/libipa/helpers.h                      |  23 +++
 src/ipa/libipa/meson.build                    |   2 +
 src/ipa/rkisp1/algorithms/awb.cpp             |  20 +--
 src/ipa/rkisp1/algorithms/awb.h               |   2 -
 src/ipa/rpi/controller/rpi/agc_channel.cpp    |  10 +-
 src/libcamera/pipeline/ipu3/ipu3.cpp          |  11 +-
 src/libcamera/pipeline/rkisp1/rkisp1.cpp      |  12 +-
 src/libcamera/pipeline/simple/simple.cpp      |   7 +-
 src/libcamera/property_ids_core.yaml          |  25 +++
 src/libcamera/sensor/camera_sensor.cpp        |   8 +
 .../sensor/camera_sensor_properties.cpp       | 167 ++++++++++++++++++
 16 files changed, 371 insertions(+), 74 deletions(-)
 create mode 100644 src/ipa/libipa/helpers.cpp
 create mode 100644 src/ipa/libipa/helpers.h