fix rga2 dst yuv offset addr generate error
authorzsq <zsq@rock-chips.com>
Mon, 20 Oct 2014 00:26:32 +0000 (08:26 +0800)
committerzsq <zsq@rock-chips.com>
Mon, 20 Oct 2014 00:26:32 +0000 (08:26 +0800)
drivers/video/rockchip/rga2/rga2_reg_info.c

index 82c34e9c1c23d6a7d6bc180ca3e5f973a595af52..01bdfcc1c0de0a6228b881ce2ca1ec0574a524c6 100644 (file)
@@ -434,8 +434,8 @@ RGA2_set_reg_dst_info(u8 *base, struct rga2_req *msg)
     s_y_rd_addr = s_y_ld_addr + (msg->dst.act_w - 1) * spw;\r
 \r
     yrgb_addr = (RK_U32)msg->dst.yrgb_addr + (msg->dst.y_offset * d_stride) + (msg->dst.x_offset * dpw);\r
-    u_addr = (RK_U32)msg->dst.uv_addr + msg->dst.y_offset * d_uv_stride + msg->dst.x_offset / x_div;\r
-    v_addr = (RK_U32)msg->dst.v_addr + msg->dst.y_offset * d_uv_stride + msg->dst.x_offset / x_div;\r
+    u_addr = (RK_U32)msg->dst.uv_addr + (msg->dst.y_offset / y_div) * d_uv_stride + msg->dst.x_offset / x_div;\r
+    v_addr = (RK_U32)msg->dst.v_addr + (msg->dst.y_offset / y_div) * d_uv_stride + msg->dst.x_offset / x_div;\r
 \r
     y_lt_addr = yrgb_addr;\r
     u_lt_addr = u_addr;\r