[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20240402100011.13480-3-changhuang.liang@starfivetech.com>
Date: Tue, 2 Apr 2024 03:00:00 -0700
From: Changhuang Liang <changhuang.liang@...rfivetech.com>
To: Mauro Carvalho Chehab <mchehab@...nel.org>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Matthias Brugger <matthias.bgg@...il.com>,
Hans Verkuil <hverkuil-cisco@...all.nl>,
Ming Qian <ming.qian@....com>,
Laurent Pinchart <laurent.pinchart@...asonboard.com>,
Nicolas Dufresne <nicolas.dufresne@...labora.com>,
Benjamin Gaignard <benjamin.gaignard@...labora.com>,
Tomi Valkeinen <tomi.valkeinen+renesas@...asonboard.com>,
Mingjia Zhang <mingjia.zhang@...iatek.com>,
Marvin Lin <milkfafa@...il.com>
Cc: Jack Zhu <jack.zhu@...rfivetech.com>,
Changhuang Liang <changhuang.liang@...rfivetech.com>,
linux-media@...r.kernel.org,
linux-kernel@...r.kernel.org,
linux-staging@...ts.linux.dev
Subject: [PATCH v4 02/13] media: Documentation: Add description for StarFive ISP metadata formats
Add description for V4L2_META_FMT_STF_ISP_PARAMS and
V4L2_META_FMT_STF_ISP_STAT_3A meta data formats.
Signed-off-by: Changhuang Liang <changhuang.liang@...rfivetech.com>
---
.../media/v4l/metafmt-starfive-isp.rst | 75 +++++++++++++++++++
MAINTAINERS | 1 +
2 files changed, 76 insertions(+)
create mode 100644 Documentation/userspace-api/media/v4l/metafmt-starfive-isp.rst
diff --git a/Documentation/userspace-api/media/v4l/metafmt-starfive-isp.rst b/Documentation/userspace-api/media/v4l/metafmt-starfive-isp.rst
new file mode 100644
index 000000000000..ebb4291833d6
--- /dev/null
+++ b/Documentation/userspace-api/media/v4l/metafmt-starfive-isp.rst
@@ -0,0 +1,75 @@
+.. SPDX-License-Identifier: GPL-2.0
+
+.. _v4l2-meta-fmt-stf-isp-params:
+
+.. _v4l2-meta-fmt-stf-isp-stat-3a:
+
+*****************************************************************************
+V4L2_META_FMT_STF_ISP_PARAMS ('stfp'), V4L2_META_FMT_STF_ISP_STAT_3A ('stfs')
+*****************************************************************************
+
+.. jh7110_isp_params_buffer
+
+Configuration parameters
+========================
+
+The configuration parameters are passed to the "output_params" metadata output
+video node, using the :c:type:`v4l2_meta_format` interface. They are formatted
+as described by the :c:type:`jh7110_isp_params_buffer` structure.
+
+.. code-block:: c
+
+ struct jh7110_isp_params_buffer {
+ __u32 enable_setting;
+ struct jh7110_isp_wb_setting wb_setting;
+ struct jh7110_isp_car_setting car_setting;
+ struct jh7110_isp_ccm_setting ccm_setting;
+ struct jh7110_isp_cfa_setting cfa_setting;
+ struct jh7110_isp_ctc_setting ctc_setting;
+ struct jh7110_isp_dbc_setting dbc_setting;
+ struct jh7110_isp_dnyuv_setting dnyuv_setting;
+ struct jh7110_isp_gmargb_setting gmargb_setting;
+ struct jh7110_isp_lccf_setting lccf_setting;
+ struct jh7110_isp_obc_setting obc_setting;
+ struct jh7110_isp_oecf_setting oecf_setting;
+ struct jh7110_isp_r2y_setting r2y_setting;
+ struct jh7110_isp_sat_setting sat_setting;
+ struct jh7110_isp_sharp_setting sharp_setting;
+ struct jh7110_isp_ycrv_setting ycrv_setting;
+ struct jh7110_isp_sc_setting sc_setting;
+ };
+
+.. jh7110_isp_sc_buffer
+
+3A and histogram statistics
+===========================
+
+The ISP device collects different statistics over an input Bayer frame.
+Those statistics are obtained from the "capture_scd" metadata capture video
+node, using the :c:type:`v4l2_meta_format` interface. They are formatted as
+described by the :c:type:`jh7110_isp_sc_buffer` structure.
+
+.. code-block:: c
+
+ struct jh7110_isp_sc_buffer {
+ __u32 y_histogram[64];
+ __u32 reserv0[33];
+ __u32 bright_sc[4096];
+ __u32 reserv1[96];
+ __u32 ae_hist_y[128];
+ __u32 reserv2[511];
+ __u16 flag;
+ };
+
+The statistics collected are Auto Exposure, AWB (Auto-white balance), Histogram
+and AF (Auto-focus). See :c:type:`jh7110_isp_sc_buffer` for details of the
+statistics.
+
+The 3A statistics and configuration parameters described here are usually
+consumed and produced by dedicated user space libraries that comprise the
+important tuning tools using software control loop.
+
+JH7110 ISP uAPI data types
+======================
+
+.. kernel-doc:: include/uapi/linux/jh7110-isp.h
diff --git a/MAINTAINERS b/MAINTAINERS
index e5ed3c876a55..4ec5977a47f4 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -20954,6 +20954,7 @@ L: linux-media@...r.kernel.org
S: Maintained
F: Documentation/admin-guide/media/starfive_camss.rst
F: Documentation/devicetree/bindings/media/starfive,jh7110-camss.yaml
+F: Documentation/userspace-api/media/v4l/metafmt-starfive-isp.rst
F: drivers/staging/media/starfive/camss
F: include/uapi/linux/jh7110-isp.h
--
2.25.1
Powered by blists - more mailing lists