[PATCH v2 0/2] Add Amlogic C3 ISP pipeline handler and IPA
Keke Li
keke.li at amlogic.com
Fri Dec 27 11:58:38 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.
Link to the C3 ISP driver patch v5:
https://lore.kernel.org/r/20241227-c3isp-v5-0-c7124e762ff6@amlogic.com
Changes in v2:
- Align struct c3_isp_params_xxx to 8 bytes in c3-isp-config.h
- Modify c3_isp_stats_buffer to c3_isp_stats_info in c3-isp-config.h
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 | 1 +
include/linux/c3-isp-config.h | 564 ++++++++++
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, 3996 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.1
More information about the libcamera-devel
mailing list