rk_fb: DSP_INFO use xact/yact when win not support scale
authorMark Yao <mark.yao@rock-chips.com>
Mon, 19 Jan 2015 04:33:48 +0000 (12:33 +0800)
committerMark Yao <mark.yao@rock-chips.com>
Mon, 19 Jan 2015 04:42:55 +0000 (12:42 +0800)
xact/yact means display buffer size, if use xsize/ysize,
maybe out of buffer size range, that would cause iommu crash.

Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
drivers/video/rockchip/lcdc/rk312x_lcdc.c

index 9a04675a8b4e4f8d2922a280d362780e1855d1a1..38c29f883fec97505088bfa29e1adc20f0a4db77 100755 (executable)
@@ -470,8 +470,8 @@ static void lcdc_layer_update_regs(struct lcdc_device *lcdc_dev,
                                            WIN1_MST, win->area[0].y_addr);
                        } else {
                                lcdc_writel(lcdc_dev, WIN1_DSP_INFO_RK312X,
-                                           v_DSP_WIDTH(win->area[0].xsize) |
-                                           v_DSP_HEIGHT(win->area[0].ysize));
+                                           v_DSP_WIDTH(win->area[0].xact) |
+                                           v_DSP_HEIGHT(win->area[0].yact));
                                lcdc_writel(lcdc_dev, WIN1_DSP_ST_RK312X,
                                            v_DSP_STX(win->area[0].dsp_stx) |
                                            v_DSP_STY(win->area[0].dsp_sty));