From 3066221fd529f0bf6509d1ce3f04bfd2e563c917 Mon Sep 17 00:00:00 2001 From: Zefa Chen Date: Thu, 20 Feb 2025 16:15:43 +0800 Subject: [PATCH] media: rockchip: vicap fixes error of parse data type Signed-off-by: Zefa Chen Change-Id: I02b1fe620312ce3b6fdae08da6eea993f141cfc0 --- drivers/media/platform/rockchip/cif/capture.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/media/platform/rockchip/cif/capture.c b/drivers/media/platform/rockchip/cif/capture.c index b9cf3bf9685c..875ba821f007 100644 --- a/drivers/media/platform/rockchip/cif/capture.c +++ b/drivers/media/platform/rockchip/cif/capture.c @@ -4422,11 +4422,12 @@ static void rkcif_modify_frame_skip_config(struct rkcif_stream *stream) } } -static u32 rkcif_get_parse_type_rk3576(const struct cif_input_fmt *cif_fmt_in) +static u32 rkcif_get_parse_type_rk3576(const struct cif_input_fmt *cif_fmt_in, + struct csi_channel_info *channel) { u32 parse_type = 0; - switch (cif_fmt_in->csi_fmt_val) { + switch (channel->csi_fmt_val) { case CSI_WRDDR_TYPE_RAW8: parse_type = CSI_WRDDR_TYPE_RAW8 << 3; break; @@ -4701,7 +4702,7 @@ static int rkcif_csi_channel_set_v1(struct rkcif_stream *stream, if (dev->chip_id > CHIP_RK3562_CIF) { val = CSI_ENABLE_CAPTURE | dma_en | CSI_ENABLE_CROP_RK3576; - val |= rkcif_get_parse_type_rk3576(stream->cif_fmt_in); + val |= rkcif_get_parse_type_rk3576(stream->cif_fmt_in, channel); val |= rkcif_csi_get_output_type_mask_rk3576(stream); val |= stream->cif_fmt_in->csi_yuv_order >> 4; if (stream->is_high_align)