drm/mediatek: add connection from RDMA1 to DSI2
authorstu.hsieh@mediatek.com <stu.hsieh@mediatek.com>
Wed, 20 Jun 2018 08:19:20 +0000 (16:19 +0800)
committerCK Hu <ck.hu@mediatek.com>
Sun, 24 Jun 2018 04:06:14 +0000 (12:06 +0800)
This patch add the connection from RDMA1 to DSI2

Signed-off-by: Stu Hsieh <stu.hsieh@mediatek.com>
Signed-off-by: CK Hu <ck.hu@mediatek.com>
drivers/gpu/drm/mediatek/mtk_drm_ddp.c

index 90228cad051aa22916fd36cf3b459a85b3cc378c..9cf2fcb4932afbc28fc37930deae460020a81769 100644 (file)
@@ -28,6 +28,7 @@
 #define DISP_REG_CONFIG_DISP_UFOE_MOUT_EN      0x050
 #define DISP_REG_CONFIG_DISP_COLOR0_SEL_IN     0x084
 #define DISP_REG_CONFIG_DISP_COLOR1_SEL_IN     0x088
+#define DISP_REG_CONFIG_DSIE_SEL_IN            0x0a4
 #define DISP_REG_CONFIG_DSIO_SEL_IN            0x0a8
 #define DISP_REG_CONFIG_DPI_SEL_IN             0x0ac
 #define DISP_REG_CONFIG_DISP_RDMA0_SOUT_EN     0x0c4
 #define RDMA1_SOUT_DPI0                        0x2
 #define RDMA1_SOUT_DPI1                        0x3
 #define RDMA1_SOUT_DSI1                        0x1
+#define RDMA1_SOUT_DSI2                        0x4
 #define DPI0_SEL_IN_RDMA1              0x1
 #define DPI1_SEL_IN_RDMA1              (0x1 << 8)
 #define DSI1_SEL_IN_RDMA1              0x1
+#define DSI2_SEL_IN_RDMA1              (0x1 << 16)
 #define COLOR1_SEL_IN_OVL1             0x1
 
 #define OVL_MOUT_EN_RDMA               0x1
@@ -176,6 +179,9 @@ static unsigned int mtk_ddp_mout_en(enum mtk_ddp_comp_id cur,
        } else if (cur == DDP_COMPONENT_RDMA1 && next == DDP_COMPONENT_DSI1) {
                *addr = DISP_REG_CONFIG_DISP_RDMA1_SOUT_EN;
                value = RDMA1_SOUT_DSI1;
+       } else if (cur == DDP_COMPONENT_RDMA1 && next == DDP_COMPONENT_DSI2) {
+               *addr = DISP_REG_CONFIG_DISP_RDMA1_SOUT_EN;
+               value = RDMA1_SOUT_DSI2;
        } else if (cur == DDP_COMPONENT_RDMA1 && next == DDP_COMPONENT_DPI0) {
                *addr = DISP_REG_CONFIG_DISP_RDMA1_SOUT_EN;
                value = RDMA1_SOUT_DPI0;
@@ -207,6 +213,9 @@ static unsigned int mtk_ddp_sel_in(enum mtk_ddp_comp_id cur,
        } else if (cur == DDP_COMPONENT_RDMA1 && next == DDP_COMPONENT_DSI1) {
                *addr = DISP_REG_CONFIG_DSIO_SEL_IN;
                value = DSI1_SEL_IN_RDMA1;
+       } else if (cur == DDP_COMPONENT_RDMA1 && next == DDP_COMPONENT_DSI2) {
+               *addr = DISP_REG_CONFIG_DSIE_SEL_IN;
+               value = DSI2_SEL_IN_RDMA1;
        } else if (cur == DDP_COMPONENT_OVL1 && next == DDP_COMPONENT_COLOR1) {
                *addr = DISP_REG_CONFIG_DISP_COLOR1_SEL_IN;
                value = COLOR1_SEL_IN_OVL1;