Commit a45a423a authored by Dafna Hirschfeld's avatar Dafna Hirschfeld Committed by Mauro Carvalho Chehab

media: staging: rkisp1: replace 9 coeff* fields with a 3x3 array

The struct rkisp1_cif_isp_ctk_config has 9 fields 'coeff*' for the
3x3 color correction matrix. Replace these fields with one 3x3
array coeff[3][3] and document the field.
Signed-off-by: default avatarDafna Hirschfeld <dafna.hirschfeld@collabora.com>
Acked-by: default avatarHelen Koike <helen.koike@collabora.com>
Signed-off-by: default avatarHans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+huawei@kernel.org>
parent 084dd481
...@@ -402,15 +402,12 @@ static void rkisp1_goc_config(struct rkisp1_params *params, ...@@ -402,15 +402,12 @@ static void rkisp1_goc_config(struct rkisp1_params *params,
static void rkisp1_ctk_config(struct rkisp1_params *params, static void rkisp1_ctk_config(struct rkisp1_params *params,
const struct rkisp1_cif_isp_ctk_config *arg) const struct rkisp1_cif_isp_ctk_config *arg)
{ {
rkisp1_write(params->rkisp1, arg->coeff0, RKISP1_CIF_ISP_CT_COEFF_0); unsigned int i, j, k = 0;
rkisp1_write(params->rkisp1, arg->coeff1, RKISP1_CIF_ISP_CT_COEFF_1);
rkisp1_write(params->rkisp1, arg->coeff2, RKISP1_CIF_ISP_CT_COEFF_2); for (i = 0; i < 3; i++)
rkisp1_write(params->rkisp1, arg->coeff3, RKISP1_CIF_ISP_CT_COEFF_3); for (j = 0; j < 3; j++)
rkisp1_write(params->rkisp1, arg->coeff4, RKISP1_CIF_ISP_CT_COEFF_4); rkisp1_write(params->rkisp1, arg->coeff[i][j],
rkisp1_write(params->rkisp1, arg->coeff5, RKISP1_CIF_ISP_CT_COEFF_5); RKISP1_CIF_ISP_CT_COEFF_0 + 4 * k++);
rkisp1_write(params->rkisp1, arg->coeff6, RKISP1_CIF_ISP_CT_COEFF_6);
rkisp1_write(params->rkisp1, arg->coeff7, RKISP1_CIF_ISP_CT_COEFF_7);
rkisp1_write(params->rkisp1, arg->coeff8, RKISP1_CIF_ISP_CT_COEFF_8);
rkisp1_write(params->rkisp1, arg->ct_offset_r, rkisp1_write(params->rkisp1, arg->ct_offset_r,
RKISP1_CIF_ISP_CT_OFFSET_R); RKISP1_CIF_ISP_CT_OFFSET_R);
rkisp1_write(params->rkisp1, arg->ct_offset_g, rkisp1_write(params->rkisp1, arg->ct_offset_g,
......
...@@ -417,19 +417,13 @@ struct rkisp1_cif_isp_bdm_config { ...@@ -417,19 +417,13 @@ struct rkisp1_cif_isp_bdm_config {
/** /**
* struct rkisp1_cif_isp_ctk_config - Configuration used by Cross Talk correction * struct rkisp1_cif_isp_ctk_config - Configuration used by Cross Talk correction
* *
* @coeff: color correction matrix * @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_b: offset for the crosstalk correction matrix
*/ */
struct rkisp1_cif_isp_ctk_config { struct rkisp1_cif_isp_ctk_config {
__u16 coeff0; __u16 coeff[3][3];
__u16 coeff1;
__u16 coeff2;
__u16 coeff3;
__u16 coeff4;
__u16 coeff5;
__u16 coeff6;
__u16 coeff7;
__u16 coeff8;
__u16 ct_offset_r; __u16 ct_offset_r;
__u16 ct_offset_g; __u16 ct_offset_g;
__u16 ct_offset_b; __u16 ct_offset_b;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment