aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArchit Taneja <architt@codeaurora.org>2016-09-14 02:53:07 -0400
committerRob Clark <robdclark@gmail.com>2017-02-06 11:28:44 -0500
commit3a3ff88a0fc18ad45f0f5818a4f3de395da68d47 (patch)
tree79549d4c5707d01ef1934137e9e8711e217b213c
parenta1b1a4f7e4c3cf3352ae477b86ddea2d4ed35d3e (diff)
drm/msm/dsi: Add 8x96 info in dsi_cfg
Add 8x96 DSI data in dsi_cfg. The downstream kernel's dsi_host driver enables core_mmss_clk. We're seeing some branch clock warnings on 8x96 when enabling this. There doesn't seem to be any negative effect with not enabling this clock, so use it once we figure out why we get the warnings. Signed-off-by: Archit Taneja <architt@codeaurora.org> Signed-off-by: Rob Clark <robdclark@gmail.com>
-rw-r--r--drivers/gpu/drm/msm/dsi/dsi_cfg.c25
-rw-r--r--drivers/gpu/drm/msm/dsi/dsi_cfg.h1
2 files changed, 26 insertions, 0 deletions
diff --git a/drivers/gpu/drm/msm/dsi/dsi_cfg.c b/drivers/gpu/drm/msm/dsi/dsi_cfg.c
index 63436d8ee470..a5d75c9b3a73 100644
--- a/drivers/gpu/drm/msm/dsi/dsi_cfg.c
+++ b/drivers/gpu/drm/msm/dsi/dsi_cfg.c
@@ -94,6 +94,30 @@ static const struct msm_dsi_config msm8994_dsi_cfg = {
94 .num_dsi = 2, 94 .num_dsi = 2,
95}; 95};
96 96
97/*
98 * TODO: core_mmss_clk fails to enable for some reason, but things work fine
99 * without it too. Figure out why it doesn't enable and uncomment below
100 */
101static const char * const dsi_8996_bus_clk_names[] = {
102 "mdp_core_clk", "iface_clk", "bus_clk", /* "core_mmss_clk", */
103};
104
105static const struct msm_dsi_config msm8996_dsi_cfg = {
106 .io_offset = DSI_6G_REG_SHIFT,
107 .reg_cfg = {
108 .num = 2,
109 .regs = {
110 {"vdda", 18160, 1 }, /* 1.25 V */
111 {"vcca", 17000, 32 }, /* 0.925 V */
112 {"vddio", 100000, 100 },/* 1.8 V */
113 },
114 },
115 .bus_clk_names = dsi_8996_bus_clk_names,
116 .num_bus_clks = ARRAY_SIZE(dsi_8996_bus_clk_names),
117 .io_start = { 0x994000, 0x996000 },
118 .num_dsi = 2,
119};
120
97static const struct msm_dsi_cfg_handler dsi_cfg_handlers[] = { 121static const struct msm_dsi_cfg_handler dsi_cfg_handlers[] = {
98 {MSM_DSI_VER_MAJOR_V2, MSM_DSI_V2_VER_MINOR_8064, &apq8064_dsi_cfg}, 122 {MSM_DSI_VER_MAJOR_V2, MSM_DSI_V2_VER_MINOR_8064, &apq8064_dsi_cfg},
99 {MSM_DSI_VER_MAJOR_6G, MSM_DSI_6G_VER_MINOR_V1_0, 123 {MSM_DSI_VER_MAJOR_6G, MSM_DSI_6G_VER_MINOR_V1_0,
@@ -106,6 +130,7 @@ static const struct msm_dsi_cfg_handler dsi_cfg_handlers[] = {
106 &msm8974_apq8084_dsi_cfg}, 130 &msm8974_apq8084_dsi_cfg},
107 {MSM_DSI_VER_MAJOR_6G, MSM_DSI_6G_VER_MINOR_V1_3, &msm8994_dsi_cfg}, 131 {MSM_DSI_VER_MAJOR_6G, MSM_DSI_6G_VER_MINOR_V1_3, &msm8994_dsi_cfg},
108 {MSM_DSI_VER_MAJOR_6G, MSM_DSI_6G_VER_MINOR_V1_3_1, &msm8916_dsi_cfg}, 132 {MSM_DSI_VER_MAJOR_6G, MSM_DSI_6G_VER_MINOR_V1_3_1, &msm8916_dsi_cfg},
133 {MSM_DSI_VER_MAJOR_6G, MSM_DSI_6G_VER_MINOR_V1_4_1, &msm8996_dsi_cfg},
109}; 134};
110 135
111const struct msm_dsi_cfg_handler *msm_dsi_cfg_get(u32 major, u32 minor) 136const struct msm_dsi_cfg_handler *msm_dsi_cfg_get(u32 major, u32 minor)
diff --git a/drivers/gpu/drm/msm/dsi/dsi_cfg.h b/drivers/gpu/drm/msm/dsi/dsi_cfg.h
index eeacc3232494..00a5da2663c6 100644
--- a/drivers/gpu/drm/msm/dsi/dsi_cfg.h
+++ b/drivers/gpu/drm/msm/dsi/dsi_cfg.h
@@ -24,6 +24,7 @@
24#define MSM_DSI_6G_VER_MINOR_V1_2 0x10020000 24#define MSM_DSI_6G_VER_MINOR_V1_2 0x10020000
25#define MSM_DSI_6G_VER_MINOR_V1_3 0x10030000 25#define MSM_DSI_6G_VER_MINOR_V1_3 0x10030000
26#define MSM_DSI_6G_VER_MINOR_V1_3_1 0x10030001 26#define MSM_DSI_6G_VER_MINOR_V1_3_1 0x10030001
27#define MSM_DSI_6G_VER_MINOR_V1_4_1 0x10040001
27 28
28#define MSM_DSI_V2_VER_MINOR_8064 0x0 29#define MSM_DSI_V2_VER_MINOR_8064 0x0
29 30