Commit a802a043 authored by Dafna Hirschfeld's avatar Dafna Hirschfeld Committed by Mauro Carvalho Chehab
Browse files

media: rkisp1: stats: mask the hist_bins values



hist_bins is an array of type __u32. Each entry represents
a 20 bit value. So mask out the unused bits.

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 a76f8dc8
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -365,6 +365,7 @@
#define RKISP1_CIF_ISP_MAX_HIST_PREDIVIDER		0x0000007F
#define RKISP1_CIF_ISP_HIST_ROW_NUM			5
#define RKISP1_CIF_ISP_HIST_COLUMN_NUM			5
#define RKISP1_CIF_ISP_HIST_GET_BIN(x)			((x) & 0x000FFFFF)

/* AUTO FOCUS MEASUREMENT:  ISP_AFM_CTRL */
#define RKISP1_ISP_AFM_CTRL_ENABLE			BIT(0)
+5 −3
Original line number Diff line number Diff line
@@ -233,9 +233,11 @@ static void rkisp1_stats_get_hst_meas(struct rkisp1_stats *stats,
	unsigned int i;

	pbuf->meas_type |= RKISP1_CIF_ISP_STAT_HIST;
	for (i = 0; i < RKISP1_CIF_ISP_HIST_BIN_N_MAX; i++)
		pbuf->params.hist.hist_bins[i] =
			rkisp1_read(rkisp1, RKISP1_CIF_ISP_HIST_BIN_0 + i * 4);
	for (i = 0; i < RKISP1_CIF_ISP_HIST_BIN_N_MAX; i++) {
		u32 reg_val = rkisp1_read(rkisp1, RKISP1_CIF_ISP_HIST_BIN_0 + i * 4);

		pbuf->params.hist.hist_bins[i] = RKISP1_CIF_ISP_HIST_GET_BIN(reg_val);
	}
}

static void rkisp1_stats_get_bls_meas(struct rkisp1_stats *stats,