{"id":22448,"url":"https://patchwork.libcamera.org/api/covers/22448/?format=json","web_url":"https://patchwork.libcamera.org/cover/22448/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/projects/1/?format=json","name":"libcamera","link_name":"libcamera","list_id":"libcamera_core","list_email":"libcamera-devel@lists.libcamera.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20241227105840.159559-1-keke.li@amlogic.com>","date":"2024-12-27T10:58:38","name":"[v2,0/2] Add Amlogic C3 ISP pipeline handler and IPA","submitter":{"id":217,"url":"https://patchwork.libcamera.org/api/people/217/?format=json","name":"Keke Li","email":"keke.li@amlogic.com"},"mbox":"https://patchwork.libcamera.org/cover/22448/mbox/","series":[{"id":4926,"url":"https://patchwork.libcamera.org/api/series/4926/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=4926","date":"2024-12-27T10:58:38","name":"Add Amlogic C3 ISP pipeline handler and IPA","version":2,"mbox":"https://patchwork.libcamera.org/series/4926/mbox/"}],"comments":"https://patchwork.libcamera.org/api/covers/22448/comments/","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id A8D4BC32B5\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 27 Dec 2024 10:59:04 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 92DE3684CB;\n\tFri, 27 Dec 2024 11:59:03 +0100 (CET)","from mail-sh.amlogic.com (unknown [58.32.228.46])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id E611461893\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 27 Dec 2024 11:58:51 +0100 (CET)","from droid10.amlogic.com (10.18.11.213) by mail-sh.amlogic.com\n\t(10.18.11.5) with Microsoft SMTP Server id 15.1.2507.39;\n\tFri, 27 Dec 2024 18:58:49 +0800"],"From":"Keke Li <keke.li@amlogic.com>","To":"<libcamera-devel@lists.libcamera.org>","CC":"<kieran.bingham@ideasonboard.com>, <laurent.pinchart@ideasonboard.com>, \n\t<dan.scally@ideasonboard.com>, <jacopo.mondi@ideasonboard.com>, Keke Li\n\t<keke.li@amlogic.com>","Subject":"[PATCH v2 0/2] Add Amlogic C3 ISP pipeline handler and IPA","Date":"Fri, 27 Dec 2024 18:58:38 +0800","Message-ID":"<20241227105840.159559-1-keke.li@amlogic.com>","X-Mailer":"git-send-email 2.29.0","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","Content-Type":"text/plain","X-Originating-IP":"[10.18.11.213]","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"The Amlogic C3 platform integrates an ISP capable of supporting\nmulti-camera, multi-exposure high dynamic range (HDR) imaging with up to\n14-bit raw RGB Bayer data.\n\nThe C3 ISP pipeline handler supports 3-channel image output,\n1-channel 3A statistics ouput and 1-channel parameters input.\n\nLink to the C3 ISP driver patch v5:\nhttps://lore.kernel.org/r/20241227-c3isp-v5-0-c7124e762ff6@amlogic.com\n\nChanges in v2:\n- Align struct c3_isp_params_xxx to 8 bytes in c3-isp-config.h\n- Modify c3_isp_stats_buffer to c3_isp_stats_info in c3-isp-config.h\n\nKeke Li (2):\n  libcamera: pipeline: Add C3 ISP pipeline handler\n  libcamera: ipa: Add C3 ISP IPA\n\n include/libcamera/ipa/c3isp.mojom         |   42 +\n include/libcamera/ipa/meson.build         |    1 +\n include/linux/c3-isp-config.h             |  564 ++++++++++\n include/linux/videodev2.h                 |    4 +\n meson_options.txt                         |    3 +-\n src/ipa/c3-isp/algorithms/agc.cpp         |  260 +++++\n src/ipa/c3-isp/algorithms/agc.h           |   50 +\n src/ipa/c3-isp/algorithms/algorithm.h     |   31 +\n src/ipa/c3-isp/algorithms/awb.cpp         |  257 +++++\n src/ipa/c3-isp/algorithms/awb.h           |   42 +\n src/ipa/c3-isp/algorithms/blc.cpp         |  102 ++\n src/ipa/c3-isp/algorithms/blc.h           |   40 +\n src/ipa/c3-isp/algorithms/ccm.cpp         |   86 ++\n src/ipa/c3-isp/algorithms/ccm.h           |   40 +\n src/ipa/c3-isp/algorithms/csc.cpp         |   64 ++\n src/ipa/c3-isp/algorithms/csc.h           |   32 +\n src/ipa/c3-isp/algorithms/meson.build     |   10 +\n src/ipa/c3-isp/algorithms/post_gamma.cpp  |   64 ++\n src/ipa/c3-isp/algorithms/post_gamma.h    |   33 +\n src/ipa/c3-isp/c3-isp.cpp                 |  386 +++++++\n src/ipa/c3-isp/data/imx290.yaml           |   30 +\n src/ipa/c3-isp/data/meson.build           |    9 +\n src/ipa/c3-isp/ipa_context.cpp            |  251 +++++\n src/ipa/c3-isp/ipa_context.h              |  110 ++\n src/ipa/c3-isp/meson.build                |   32 +\n src/ipa/c3-isp/module.h                   |   28 +\n src/ipa/c3-isp/params.cpp                 |  127 +++\n src/ipa/c3-isp/params.h                   |  133 +++\n src/libcamera/pipeline/c3-isp/c3-isp.cpp  | 1161 +++++++++++++++++++++\n src/libcamera/pipeline/c3-isp/meson.build |    5 +\n 30 files changed, 3996 insertions(+), 1 deletion(-)\n create mode 100644 include/libcamera/ipa/c3isp.mojom\n create mode 100644 include/linux/c3-isp-config.h\n create mode 100644 src/ipa/c3-isp/algorithms/agc.cpp\n create mode 100644 src/ipa/c3-isp/algorithms/agc.h\n create mode 100644 src/ipa/c3-isp/algorithms/algorithm.h\n create mode 100755 src/ipa/c3-isp/algorithms/awb.cpp\n create mode 100755 src/ipa/c3-isp/algorithms/awb.h\n create mode 100644 src/ipa/c3-isp/algorithms/blc.cpp\n create mode 100644 src/ipa/c3-isp/algorithms/blc.h\n create mode 100644 src/ipa/c3-isp/algorithms/ccm.cpp\n create mode 100644 src/ipa/c3-isp/algorithms/ccm.h\n create mode 100644 src/ipa/c3-isp/algorithms/csc.cpp\n create mode 100644 src/ipa/c3-isp/algorithms/csc.h\n create mode 100644 src/ipa/c3-isp/algorithms/meson.build\n create mode 100644 src/ipa/c3-isp/algorithms/post_gamma.cpp\n create mode 100644 src/ipa/c3-isp/algorithms/post_gamma.h\n create mode 100644 src/ipa/c3-isp/c3-isp.cpp\n create mode 100644 src/ipa/c3-isp/data/imx290.yaml\n create mode 100644 src/ipa/c3-isp/data/meson.build\n create mode 100644 src/ipa/c3-isp/ipa_context.cpp\n create mode 100644 src/ipa/c3-isp/ipa_context.h\n create mode 100644 src/ipa/c3-isp/meson.build\n create mode 100644 src/ipa/c3-isp/module.h\n create mode 100644 src/ipa/c3-isp/params.cpp\n create mode 100644 src/ipa/c3-isp/params.h\n create mode 100644 src/libcamera/pipeline/c3-isp/c3-isp.cpp\n create mode 100644 src/libcamera/pipeline/c3-isp/meson.build"}