From: zsq Date: Mon, 11 Aug 2014 09:47:18 +0000 (+0800) Subject: fix cbcr swap error X-Git-Tag: firefly_0821_release~4916^2~9 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=451ef29bfa1c0157492c128d77ee7b70dd3c9db6;p=firefly-linux-kernel-4.4.55.git fix cbcr swap error --- diff --git a/drivers/video/rockchip/rga/rga_reg_info.c b/drivers/video/rockchip/rga/rga_reg_info.c index 6951388a4e3c..ba29bd6ceb10 100755 --- a/drivers/video/rockchip/rga/rga_reg_info.c +++ b/drivers/video/rockchip/rga/rga_reg_info.c @@ -708,7 +708,7 @@ s32 RGA_set_dst(u8 *base, const struct rga_req *msg) case RK_FORMAT_YCbCr_422_SP : *bRGA_PRESCL_CB_MST = (u32)msg->dst.uv_addr + ((y_off) * stride) + ((x_off) * pw); *bRGA_DST_UV_MST = (u32)msg->dst.uv_addr + ((y_off) * stride) + ((x_off)); - *bRGA_YUV_OUT_CFG |= (1 << 3) | 1 | ((msg->yuv2rgb_mode >> 4) & 2); + *bRGA_YUV_OUT_CFG |= (0 << 3) | 1 | ((msg->yuv2rgb_mode >> 4) & 2); break; case RK_FORMAT_YCbCr_422_P : *bRGA_PRESCL_CB_MST = (u32)msg->dst.uv_addr + ((y_off) * stride) + ((x_off>>1) * pw); @@ -717,7 +717,7 @@ s32 RGA_set_dst(u8 *base, const struct rga_req *msg) case RK_FORMAT_YCbCr_420_SP : *bRGA_PRESCL_CB_MST = (u32)msg->dst.uv_addr + ((y_off>>1) * stride) + ((x_off) * pw); *bRGA_DST_UV_MST = (u32)msg->dst.uv_addr + ((y_off>>1) * stride) + ((x_off)); - *bRGA_YUV_OUT_CFG |= (1 << 3)|(1 << 1) | 1 | ((msg->yuv2rgb_mode >> 4) & 2); + *bRGA_YUV_OUT_CFG |= (0 << 3)|(1 << 1) | 1 | ((msg->yuv2rgb_mode >> 4) & 2); break; case RK_FORMAT_YCbCr_420_P : *bRGA_PRESCL_CB_MST = (u32)msg->dst.uv_addr + ((y_off>>1) * stride) + ((x_off>>1) * pw); @@ -726,7 +726,7 @@ s32 RGA_set_dst(u8 *base, const struct rga_req *msg) case RK_FORMAT_YCrCb_422_SP : *bRGA_PRESCL_CB_MST = (u32)msg->dst.uv_addr + ((y_off) * stride) + ((x_off) * pw); *bRGA_DST_UV_MST = (u32)msg->dst.uv_addr + ((y_off) * stride) + ((x_off)); - *bRGA_YUV_OUT_CFG |= (0 << 3)|(0 << 1) | 1 | ((msg->yuv2rgb_mode >> 4) & 2); + *bRGA_YUV_OUT_CFG |= (1 << 3)|(0 << 1) | 1 | ((msg->yuv2rgb_mode >> 4) & 2); break; case RK_FORMAT_YCrCb_422_P : *bRGA_PRESCL_CB_MST = (u32)msg->dst.uv_addr + ((y_off) * stride) + ((x_off>>1) * pw); @@ -735,7 +735,7 @@ s32 RGA_set_dst(u8 *base, const struct rga_req *msg) case RK_FORMAT_YCrCb_420_SP : *bRGA_PRESCL_CB_MST = (u32)msg->dst.uv_addr + ((y_off>>1) * stride) + ((x_off) * pw); *bRGA_DST_UV_MST = (u32)msg->dst.uv_addr + ((y_off>>1) * stride) + ((x_off)); - *bRGA_YUV_OUT_CFG |= (0 << 3)|(1 << 1) | 1 | ((msg->yuv2rgb_mode >> 4) & 2); + *bRGA_YUV_OUT_CFG |= (1 << 3)|(1 << 1) | 1 | ((msg->yuv2rgb_mode >> 4) & 2); break; case RK_FORMAT_YCrCb_420_P : *bRGA_PRESCL_CB_MST = (u32)msg->dst.uv_addr + ((y_off>>1) * stride) + ((x_off>>1) * pw);