media: staging: rkisp1: replace 3 fields 'ct_offset_*' with one array
authorDafna Hirschfeld <dafna.hirschfeld@collabora.com>
Thu, 6 Aug 2020 11:50:31 +0000 (13:50 +0200)
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Sat, 29 Aug 2020 06:25:17 +0000 (08:25 +0200)
The struct rkisp1_cif_isp_ctk_config contains 3 fields
ct_offset_{rgb}. Replace them with one array field 'ct_offset[3].

Signed-off-by: Dafna Hirschfeld <dafna.hirschfeld@collabora.com>
Acked-by: Helen Koike <helen.koike@collabora.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
drivers/staging/media/rkisp1/rkisp1-params.c
drivers/staging/media/rkisp1/uapi/rkisp1-config.h

index c41109f..6140e6c 100644 (file)
@@ -408,12 +408,9 @@ static void rkisp1_ctk_config(struct rkisp1_params *params,
                for (j = 0; j < 3; j++)
                        rkisp1_write(params->rkisp1, arg->coeff[i][j],
                                     RKISP1_CIF_ISP_CT_COEFF_0 + 4 * k++);
-       rkisp1_write(params->rkisp1, arg->ct_offset_r,
-                    RKISP1_CIF_ISP_CT_OFFSET_R);
-       rkisp1_write(params->rkisp1, arg->ct_offset_g,
-                    RKISP1_CIF_ISP_CT_OFFSET_G);
-       rkisp1_write(params->rkisp1, arg->ct_offset_b,
-                    RKISP1_CIF_ISP_CT_OFFSET_B);
+       for (i = 0; i < 3; i++)
+               rkisp1_write(params->rkisp1, arg->ct_offset[i],
+                            RKISP1_CIF_ISP_CT_OFFSET_R + i * 4);
 }
 
 static void rkisp1_ctk_enable(struct rkisp1_params *params, bool en)
index 790d56a..e89ec35 100644 (file)
@@ -420,13 +420,11 @@ struct rkisp1_cif_isp_bdm_config {
  * @coeff: color correction matrix. Values are 11-bit signed fixed-point numbers with 4 bit integer
  *             and 7 bit fractional part, ranging from -8 (0x400) to +7.992 (0x3FF). 0 is
  *             represented by 0x000 and a coefficient value of 1 as 0x080.
- * @ct_offset_b: offset for the crosstalk correction matrix
+ * @ct_offset: Red, Green, Blue offsets for the crosstalk correction matrix
  */
 struct rkisp1_cif_isp_ctk_config {
        __u16 coeff[3][3];
-       __u16 ct_offset_r;
-       __u16 ct_offset_g;
-       __u16 ct_offset_b;
+       __u16 ct_offset[3];
 } __packed;
 
 enum rkisp1_cif_isp_goc_mode {