[PATCH 0/2] Add Amlogic C3 ISP pipeline handler and IPA
Keke Li
keke.li at amlogic.com
Thu Dec 12 03:12:44 CET 2024
The Amlogic C3 platform integrates an ISP capable of supporting
multi-camera, multi-exposure high dynamic range (HDR) imaging with up to
14-bit raw RGB Bayer data.
The C3 ISP pipeline handler supports 3-channel image output,
1-channel 3A statistics ouput and 1-channel parameters input.
The C3 ISP IPA is used to process 3A statistics and generate
parameters for ISP hardware. This IPA contains agc, awb, blc, ccm, csc
and post_gamma algorithms.
Link to the C3 ISP driver patch v4:
https://lore.kernel.org/r/20241205-c3isp-v4-0-cb1868be0105@amlogic.com
Keke Li (2):
libcamera: pipeline: Add C3 ISP pipeline handler
libcamera: ipa: Add C3 ISP IPA
include/libcamera/ipa/c3isp.mojom | 42 +
include/libcamera/ipa/meson.build | 2 +
include/linux/c3-isp-config.h | 555 ++++++++++
include/linux/videodev2.h | 4 +
meson_options.txt | 3 +-
src/ipa/c3-isp/algorithms/agc.cpp | 260 +++++
src/ipa/c3-isp/algorithms/agc.h | 50 +
src/ipa/c3-isp/algorithms/algorithm.h | 31 +
src/ipa/c3-isp/algorithms/awb.cpp | 257 +++++
src/ipa/c3-isp/algorithms/awb.h | 42 +
src/ipa/c3-isp/algorithms/blc.cpp | 102 ++
src/ipa/c3-isp/algorithms/blc.h | 40 +
src/ipa/c3-isp/algorithms/ccm.cpp | 86 ++
src/ipa/c3-isp/algorithms/ccm.h | 40 +
src/ipa/c3-isp/algorithms/csc.cpp | 64 ++
src/ipa/c3-isp/algorithms/csc.h | 32 +
src/ipa/c3-isp/algorithms/meson.build | 10 +
src/ipa/c3-isp/algorithms/post_gamma.cpp | 64 ++
src/ipa/c3-isp/algorithms/post_gamma.h | 33 +
src/ipa/c3-isp/c3-isp.cpp | 386 +++++++
src/ipa/c3-isp/data/imx290.yaml | 30 +
src/ipa/c3-isp/data/meson.build | 9 +
src/ipa/c3-isp/ipa_context.cpp | 251 +++++
src/ipa/c3-isp/ipa_context.h | 110 ++
src/ipa/c3-isp/meson.build | 32 +
src/ipa/c3-isp/module.h | 28 +
src/ipa/c3-isp/params.cpp | 127 +++
src/ipa/c3-isp/params.h | 133 +++
src/libcamera/pipeline/c3-isp/c3-isp.cpp | 1161 +++++++++++++++++++++
src/libcamera/pipeline/c3-isp/meson.build | 5 +
30 files changed, 3988 insertions(+), 1 deletion(-)
create mode 100644 include/libcamera/ipa/c3isp.mojom
create mode 100644 include/linux/c3-isp-config.h
create mode 100644 src/ipa/c3-isp/algorithms/agc.cpp
create mode 100644 src/ipa/c3-isp/algorithms/agc.h
create mode 100644 src/ipa/c3-isp/algorithms/algorithm.h
create mode 100755 src/ipa/c3-isp/algorithms/awb.cpp
create mode 100755 src/ipa/c3-isp/algorithms/awb.h
create mode 100644 src/ipa/c3-isp/algorithms/blc.cpp
create mode 100644 src/ipa/c3-isp/algorithms/blc.h
create mode 100644 src/ipa/c3-isp/algorithms/ccm.cpp
create mode 100644 src/ipa/c3-isp/algorithms/ccm.h
create mode 100644 src/ipa/c3-isp/algorithms/csc.cpp
create mode 100644 src/ipa/c3-isp/algorithms/csc.h
create mode 100644 src/ipa/c3-isp/algorithms/meson.build
create mode 100644 src/ipa/c3-isp/algorithms/post_gamma.cpp
create mode 100644 src/ipa/c3-isp/algorithms/post_gamma.h
create mode 100644 src/ipa/c3-isp/c3-isp.cpp
create mode 100644 src/ipa/c3-isp/data/imx290.yaml
create mode 100644 src/ipa/c3-isp/data/meson.build
create mode 100644 src/ipa/c3-isp/ipa_context.cpp
create mode 100644 src/ipa/c3-isp/ipa_context.h
create mode 100644 src/ipa/c3-isp/meson.build
create mode 100644 src/ipa/c3-isp/module.h
create mode 100644 src/ipa/c3-isp/params.cpp
create mode 100644 src/ipa/c3-isp/params.h
create mode 100644 src/libcamera/pipeline/c3-isp/c3-isp.cpp
create mode 100644 src/libcamera/pipeline/c3-isp/meson.build
--
2.47.0
More information about the libcamera-devel
mailing list