From 058127a5dfd61fdd250e579565293c8882a8ed4d Mon Sep 17 00:00:00 2001 From: Hu Kejun Date: Fri, 24 Apr 2020 11:52:50 +0800 Subject: [PATCH] media: rockchip: isp: fix short luma is not valid in 2hdr mode Signed-off-by: Hu Kejun Change-Id: I4b3255086b4969230c4931671d96bb9f011bd380 --- .../platform/rockchip/isp/isp_mipi_luma.c | 30 +++++++++---------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/drivers/media/platform/rockchip/isp/isp_mipi_luma.c b/drivers/media/platform/rockchip/isp/isp_mipi_luma.c index 558b618d1b81..ee5539b111f0 100644 --- a/drivers/media/platform/rockchip/isp/isp_mipi_luma.c +++ b/drivers/media/platform/rockchip/isp/isp_mipi_luma.c @@ -370,26 +370,26 @@ void rkisp_luma_isr(struct rkisp_luma_vdev *luma_vdev, u32 isp_stat) work.timestamp = ktime_get_ns(); work.frame_id = cur_frame_id; - if (luma_vdev->ystat_isrcnt[0] == RKISP_LUMA_YSTAT_ISR_NUM) { + for (i = 0; i < ISP2X_MIPI_LUMA_MEAN_MAX; i++) + work.luma[0].exp_mean[i] = + readl(base + CSI2RX_Y_STAT_RO); + + for (i = 0; i < ISP2X_MIPI_LUMA_MEAN_MAX; i++) + work.luma[1].exp_mean[i] = + readl(base + CSI2RX_Y_STAT_RO); + + for (i = 0; i < ISP2X_MIPI_LUMA_MEAN_MAX; i++) + work.luma[2].exp_mean[i] = + readl(base + CSI2RX_Y_STAT_RO); + + if (luma_vdev->ystat_isrcnt[0] == RKISP_LUMA_YSTAT_ISR_NUM) work.meas_type |= ISP2X_RAW0_Y_STATE; - for (i = 0; i < ISP2X_MIPI_LUMA_MEAN_MAX; i++) - work.luma[0].exp_mean[i] = - readl(base + CSI2RX_Y_STAT_RO); - } - if (luma_vdev->ystat_isrcnt[1] == RKISP_LUMA_YSTAT_ISR_NUM) { + if (luma_vdev->ystat_isrcnt[1] == RKISP_LUMA_YSTAT_ISR_NUM) work.meas_type |= ISP2X_RAW1_Y_STATE; - for (i = 0; i < ISP2X_MIPI_LUMA_MEAN_MAX; i++) - work.luma[1].exp_mean[i] = - readl(base + CSI2RX_Y_STAT_RO); - } - if (luma_vdev->ystat_isrcnt[2] == RKISP_LUMA_YSTAT_ISR_NUM) { + if (luma_vdev->ystat_isrcnt[2] == RKISP_LUMA_YSTAT_ISR_NUM) work.meas_type |= ISP2X_RAW2_Y_STATE; - for (i = 0; i < ISP2X_MIPI_LUMA_MEAN_MAX; i++) - work.luma[2].exp_mean[i] = - readl(base + CSI2RX_Y_STAT_RO); - } if (!kfifo_is_full(&luma_vdev->rd_kfifo)) kfifo_in(&luma_vdev->rd_kfifo,