[v2,0/4] ipa: Move Pwl from Raspberry Pi to libipa
mbox series

Message ID 20240426073612.1230283-1-paul.elder@ideasonboard.com
Headers show
Series
  • ipa: Move Pwl from Raspberry Pi to libipa
Related show

Message

Paul Elder April 26, 2024, 7:36 a.m. UTC
This patch series moves the piecewise linear function class from
the Rasberry Pi IPA to libipa so that all IPAs can use it.

First an addition to the geometry header is needed, to add a
floating-point version of the Point class, then the pwl is copied over,
and the Raspberry Pi IPA is converted to use the libipa Pwl class.

The main changes in v2 are s/FPoint/PointF/g and improving the
documentation.

Paul Elder (4):
  libcamera: geometry: Add floating-point version of Point class
  ipa: libipa: Copy pwl from rpi
  ipa: libipa: pwl: Clean up Pwl class to match libcamera
  ipa: rpi: controller: Use libipa's Pwl class

 include/libcamera/geometry.h               |  65 ++++
 src/ipa/libipa/meson.build                 |   2 +
 src/ipa/{rpi/controller => libipa}/pwl.cpp | 156 +++++++--
 src/ipa/libipa/pwl.h                       |  98 ++++++
 src/ipa/rpi/controller/cac_status.h        |   2 -
 src/ipa/rpi/controller/contrast_status.h   |   4 +-
 src/ipa/rpi/controller/meson.build         |   2 +-
 src/ipa/rpi/controller/pwl.h               | 127 --------
 src/ipa/rpi/controller/rpi/af.cpp          |   4 +-
 src/ipa/rpi/controller/rpi/af.h            |   5 +-
 src/ipa/rpi/controller/rpi/agc_channel.cpp |   8 +-
 src/ipa/rpi/controller/rpi/agc_channel.h   |   7 +-
 src/ipa/rpi/controller/rpi/awb.cpp         |  40 +--
 src/ipa/rpi/controller/rpi/awb.h           |  23 +-
 src/ipa/rpi/controller/rpi/ccm.cpp         |   4 +-
 src/ipa/rpi/controller/rpi/ccm.h           |   5 +-
 src/ipa/rpi/controller/rpi/contrast.cpp    |  14 +-
 src/ipa/rpi/controller/rpi/contrast.h      |   5 +-
 src/ipa/rpi/controller/rpi/geq.cpp         |   5 +-
 src/ipa/rpi/controller/rpi/geq.h           |   4 +-
 src/ipa/rpi/controller/rpi/hdr.cpp         |   6 +-
 src/ipa/rpi/controller/rpi/hdr.h           |   9 +-
 src/ipa/rpi/controller/rpi/tonemap.cpp     |   2 +-
 src/ipa/rpi/controller/rpi/tonemap.h       |   5 +-
 src/ipa/rpi/controller/tonemap_status.h    |   4 +-
 src/libcamera/geometry.cpp                 | 123 ++++++-
 test/geometry.cpp                          | 355 +++++++++++++++++++++
 27 files changed, 854 insertions(+), 230 deletions(-)
 rename src/ipa/{rpi/controller => libipa}/pwl.cpp (60%)
 create mode 100644 src/ipa/libipa/pwl.h
 delete mode 100644 src/ipa/rpi/controller/pwl.h