1*e6a47023SSakari Ailus.. SPDX-License-Identifier: GPL-2.0
2*e6a47023SSakari Ailus
3*e6a47023SSakari Ailus.. _v4l2-meta-fmt-rk-isp1-params:
4*e6a47023SSakari Ailus
5*e6a47023SSakari Ailus.. _v4l2-meta-fmt-rk-isp1-stat-3a:
6*e6a47023SSakari Ailus
7*e6a47023SSakari Ailus*****************************************************************************
8*e6a47023SSakari AilusV4L2_META_FMT_RK_ISP1_PARAMS ('rk1p'), V4L2_META_FMT_RK_ISP1_STAT_3A ('rk1s')
9*e6a47023SSakari Ailus*****************************************************************************
10*e6a47023SSakari Ailus
11*e6a47023SSakari AilusConfiguration parameters
12*e6a47023SSakari Ailus========================
13*e6a47023SSakari Ailus
14*e6a47023SSakari AilusThe configuration parameters are passed to the
15*e6a47023SSakari Ailus:ref:`rkisp1_params <rkisp1_params>` metadata output video node, using
16*e6a47023SSakari Ailusthe :c:type:`v4l2_meta_format` interface. The buffer contains
17*e6a47023SSakari Ailusa single instance of the C structure :c:type:`rkisp1_params_cfg` defined in
18*e6a47023SSakari Ailus``rkisp1-config.h``. So the structure can be obtained from the buffer by:
19*e6a47023SSakari Ailus
20*e6a47023SSakari Ailus.. code-block:: c
21*e6a47023SSakari Ailus
22*e6a47023SSakari Ailus	struct rkisp1_params_cfg *params = (struct rkisp1_params_cfg*) buffer;
23*e6a47023SSakari Ailus
24*e6a47023SSakari Ailus.. rkisp1_stat_buffer
25*e6a47023SSakari Ailus
26*e6a47023SSakari Ailus3A and histogram statistics
27*e6a47023SSakari Ailus===========================
28*e6a47023SSakari Ailus
29*e6a47023SSakari AilusThe ISP1 device collects different statistics over an input Bayer frame.
30*e6a47023SSakari AilusThose statistics are obtained from the :ref:`rkisp1_stats <rkisp1_stats>`
31*e6a47023SSakari Ailusmetadata capture video node,
32*e6a47023SSakari Ailususing the :c:type:`v4l2_meta_format` interface. The buffer contains a single
33*e6a47023SSakari Ailusinstance of the C structure :c:type:`rkisp1_stat_buffer` defined in
34*e6a47023SSakari Ailus``rkisp1-config.h``. So the structure can be obtained from the buffer by:
35*e6a47023SSakari Ailus
36*e6a47023SSakari Ailus.. code-block:: c
37*e6a47023SSakari Ailus
38*e6a47023SSakari Ailus	struct rkisp1_stat_buffer *stats = (struct rkisp1_stat_buffer*) buffer;
39*e6a47023SSakari Ailus
40*e6a47023SSakari AilusThe statistics collected are Exposure, AWB (Auto-white balance), Histogram and
41*e6a47023SSakari AilusAF (Auto-focus). See :c:type:`rkisp1_stat_buffer` for details of the statistics.
42*e6a47023SSakari Ailus
43*e6a47023SSakari AilusThe 3A statistics and configuration parameters described here are usually
44*e6a47023SSakari Ailusconsumed and produced by dedicated user space libraries that comprise the
45*e6a47023SSakari Ailusimportant tuning tools using software control loop.
46*e6a47023SSakari Ailus
47*e6a47023SSakari Ailusrkisp1 uAPI data types
48*e6a47023SSakari Ailus======================
49*e6a47023SSakari Ailus
50*e6a47023SSakari Ailus.. kernel-doc:: include/uapi/linux/rkisp1-config.h
51