[PATCH v3 00/11] Add Mali-C55 IPA Module and Algorithms

Daniel Scally dan.scally at ideasonboard.com
Thu Nov 7 12:48:08 CET 2024


Hello all

This series adds an IPA Module to go with the Mali-C55 ISP's pipeline handler.
Algorithms are included for Black Level Correction, Auto-Exposure and Gain, Auto
White Balance and Lens Shading Correction. A tuning file for the IXM415 sensor
is also included.

The series is based on the "Miscellaneous Mali-C55 Pipeline Fixes" set and the
"Centralise common functions in IPA modules​" set.

The pipeline handler / IPA module implemented following application of this
patchset is developed using version 8 of the Mali-C55 ISP driver currently on
the linux-media mailing list [1]

Thanks
Dan

Series level changes:

	- A new patch adds the unsigned Q format helpers

[1] https://lore.kernel.org/linux-media/20241106100534.768400-1-dan.scally@ideasonboard.com/T/#t

Daniel Scally (9):
  ipa: helpers: Add Unsigned Q(m, n) helpers
  include: linux: Add mali-c55-config.h
  include: linux: Add Mali-C55 Stats and Params V4L2 format
  libcamera: mali-c55: Acquire and plumb in 3a params and stats
  ipa: mali-c55: Add Mali-C55 ISP IPA module
  ipa: mali-c55: Add Agc algorithm
  ipa: mali-c55: Add AWB Algorithm
  ipa: mali-c55: Add Lens Shading Correction algorithm
  ipa: mali-c55: Add IMX415 tuning data file

Jacopo Mondi (2):
  mali-c55: Plumb the IPA module in
  ipa: mali-c55: Add BLC Algorithm

 Documentation/Doxyfile-common.in             |   1 +
 include/libcamera/ipa/mali-c55.mojom         |  34 +
 include/libcamera/ipa/meson.build            |   1 +
 include/linux/mali-c55-config.h              | 909 +++++++++++++++++++
 include/linux/videodev2.h                    |   3 +
 meson_options.txt                            |   2 +-
 src/ipa/libipa/helpers.cpp                   |  29 +
 src/ipa/libipa/helpers.h                     |   2 +
 src/ipa/mali-c55/algorithms/agc.cpp          | 409 +++++++++
 src/ipa/mali-c55/algorithms/agc.h            |  81 ++
 src/ipa/mali-c55/algorithms/algorithm.h      |  39 +
 src/ipa/mali-c55/algorithms/awb.cpp          | 230 +++++
 src/ipa/mali-c55/algorithms/awb.h            |  40 +
 src/ipa/mali-c55/algorithms/blc.cpp          | 140 +++
 src/ipa/mali-c55/algorithms/blc.h            |  42 +
 src/ipa/mali-c55/algorithms/lsc.cpp          | 216 +++++
 src/ipa/mali-c55/algorithms/lsc.h            |  45 +
 src/ipa/mali-c55/algorithms/meson.build      |   8 +
 src/ipa/mali-c55/data/imx415.yaml            | 325 +++++++
 src/ipa/mali-c55/data/meson.build            |   9 +
 src/ipa/mali-c55/data/uncalibrated.yaml      |   7 +
 src/ipa/mali-c55/ipa_context.cpp             | 101 +++
 src/ipa/mali-c55/ipa_context.h               |  85 ++
 src/ipa/mali-c55/mali-c55.cpp                | 399 ++++++++
 src/ipa/mali-c55/meson.build                 |  33 +
 src/ipa/mali-c55/module.h                    |  27 +
 src/libcamera/pipeline/mali-c55/mali-c55.cpp | 541 ++++++++++-
 27 files changed, 3728 insertions(+), 30 deletions(-)
 create mode 100644 include/libcamera/ipa/mali-c55.mojom
 create mode 100644 include/linux/mali-c55-config.h
 create mode 100644 src/ipa/mali-c55/algorithms/agc.cpp
 create mode 100644 src/ipa/mali-c55/algorithms/agc.h
 create mode 100644 src/ipa/mali-c55/algorithms/algorithm.h
 create mode 100644 src/ipa/mali-c55/algorithms/awb.cpp
 create mode 100644 src/ipa/mali-c55/algorithms/awb.h
 create mode 100644 src/ipa/mali-c55/algorithms/blc.cpp
 create mode 100644 src/ipa/mali-c55/algorithms/blc.h
 create mode 100644 src/ipa/mali-c55/algorithms/lsc.cpp
 create mode 100644 src/ipa/mali-c55/algorithms/lsc.h
 create mode 100644 src/ipa/mali-c55/algorithms/meson.build
 create mode 100644 src/ipa/mali-c55/data/imx415.yaml
 create mode 100644 src/ipa/mali-c55/data/meson.build
 create mode 100644 src/ipa/mali-c55/data/uncalibrated.yaml
 create mode 100644 src/ipa/mali-c55/ipa_context.cpp
 create mode 100644 src/ipa/mali-c55/ipa_context.h
 create mode 100644 src/ipa/mali-c55/mali-c55.cpp
 create mode 100644 src/ipa/mali-c55/meson.build
 create mode 100644 src/ipa/mali-c55/module.h

-- 
2.30.2



More information about the libcamera-devel mailing list