diff options
author | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2011-04-15 03:42:59 -0400 |
---|---|---|
committer | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2011-05-11 07:10:54 -0400 |
commit | c94dfe05c4b6c269e445691c1fc7a9d8679ba60f (patch) | |
tree | a83f4d48f32cfc647109c61218f99f8291a19cbf /drivers/video/omap2/dss/dsi.c | |
parent | 89976f2990a97820b73a1768371ee505b0ffc176 (diff) |
OMAP: DSS2: DSI: Fix DSI PLL power bug
OMAP3630 has a HW bug causing DSI PLL power command POWER_ON_DIV (0x3)
to not work properly. The bug prevents us from enabling DSI PLL power
only to HS divider block.
This patch adds a dss feature for the bug and converts POWER_ON_DIV
requests to POWER_ON_ALL (0x2).
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Diffstat (limited to 'drivers/video/omap2/dss/dsi.c')
-rw-r--r-- | drivers/video/omap2/dss/dsi.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/video/omap2/dss/dsi.c b/drivers/video/omap2/dss/dsi.c index 5cf13f4b9e83..fe655b6ab2ab 100644 --- a/drivers/video/omap2/dss/dsi.c +++ b/drivers/video/omap2/dss/dsi.c | |||
@@ -1059,6 +1059,11 @@ static int dsi_pll_power(enum dsi_pll_power_state state) | |||
1059 | { | 1059 | { |
1060 | int t = 0; | 1060 | int t = 0; |
1061 | 1061 | ||
1062 | /* DSI-PLL power command 0x3 is not working */ | ||
1063 | if (dss_has_feature(FEAT_DSI_PLL_PWR_BUG) && | ||
1064 | state == DSI_PLL_POWER_ON_DIV) | ||
1065 | state = DSI_PLL_POWER_ON_ALL; | ||
1066 | |||
1062 | REG_FLD_MOD(DSI_CLK_CTRL, state, 31, 30); /* PLL_PWR_CMD */ | 1067 | REG_FLD_MOD(DSI_CLK_CTRL, state, 31, 30); /* PLL_PWR_CMD */ |
1063 | 1068 | ||
1064 | /* PLL_PWR_STATUS */ | 1069 | /* PLL_PWR_STATUS */ |