Skip to content

Commit 91737eb

Browse files
sandy-huangrkhuangtao
authored andcommitted
video: rockchip: vop: 3399: vop lite lut and edp output is 8 bit
Change-Id: Icb333d92713cba2dda14b977ea9c6a1617e88bbf Signed-off-by: Huang Jiachai <hjc@rock-chips.com>
1 parent f214b9b commit 91737eb

1 file changed

Lines changed: 19 additions & 11 deletions

File tree

drivers/video/rockchip/lcdc/rk322x_lcdc.c

Lines changed: 19 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -297,15 +297,20 @@ static int vop_set_lut(struct rk_lcdc_driver *dev_drv, int *dsp_lut)
297297
int __iomem *c;
298298

299299
v = dsp_lut[i];
300-
c = vop_dev->dsp_lut_addr_base + (i << 2);
301-
b = (v & 0xff) << 2;
302-
g = (v & 0xff00) << 4;
303-
r = (v & 0xff0000) << 6;
304-
v = r + g + b;
305-
for (j = 0; j < 4; j++) {
300+
if (dev_drv->id == 0) {
301+
c = vop_dev->dsp_lut_addr_base + (i << 2);
302+
b = (v & 0xff) << 2;
303+
g = (v & 0xff00) << 4;
304+
r = (v & 0xff0000) << 6;
305+
v = r + g + b;
306+
for (j = 0; j < 4; j++) {
307+
writel_relaxed(v, c);
308+
v += (1 + (1 << 10) + (1 << 20));
309+
c++;
310+
}
311+
} else {
312+
c = vop_dev->dsp_lut_addr_base + i;
306313
writel_relaxed(v, c);
307-
v += (1 + (1 << 10) + (1 << 20));
308-
c++;
309314
}
310315
}
311316
vop_msk_reg(vop_dev, DSP_CTRL1, V_DSP_LUT_EN(1));
@@ -2061,9 +2066,12 @@ static int vop_load_screen(struct rk_lcdc_driver *dev_drv, bool initscreen)
20612066
vop_msk_reg(vop_dev, DSP_CTRL1, val);
20622067
break;
20632068
case SCREEN_EDP:
2064-
if ((VOP_CHIP(vop_dev) == VOP_RK3399) &&
2065-
(vop_dev->id == 0))
2066-
face = OUT_P101010;
2069+
if (VOP_CHIP(vop_dev) == VOP_RK3399) {
2070+
if (vop_dev->id == 0)
2071+
face = OUT_P101010;
2072+
else
2073+
face = OUT_P888;
2074+
}
20672075
val = V_EDP_OUT_EN(1);
20682076
vop_msk_reg(vop_dev, SYS_CTRL, val);
20692077
val = V_EDP_HSYNC_POL(screen->pin_hsync) |

0 commit comments

Comments
 (0)