summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorVineel Kumar Reddy Kovvuri <vineelkumarr@nvidia.com>2014-07-15 09:38:48 +0530
committerMandar Padmawar <mpadmawar@nvidia.com>2014-07-16 06:28:16 -0700
commit160ca814e14e8a926a78d602e4ff4df924ba375e (patch)
tree47db207c3aa943f8a0a199fffc9bb413c7eeb1e5 /drivers
parent2f9a881cd19cf7263ed07b327b2c5a2aa4c970eb (diff)
video: tegra: dc: reset dc in probe
Reset dc in probe. This fixes norrin display(edp) not working in kernel because of inconsistent dc state set by bootloader. Bug 200013637 Bug 1500654 Change-Id: Ic6bc2c40b6942a4d4d9a98ad2c984896bbb0d9be Signed-off-by: Vineel Kumar Reddy Kovvuri <vineelkumarr@nvidia.com> Reviewed-on: http://git-master/r/437553 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Animesh Kishore <ankishore@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Jon Mayo <jmayo@nvidia.com> Reviewed-by: Dan Willemsen <dwillemsen@nvidia.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/video/tegra/dc/dc.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/video/tegra/dc/dc.c b/drivers/video/tegra/dc/dc.c
index cd5057752e70..9604a49de227 100644
--- a/drivers/video/tegra/dc/dc.c
+++ b/drivers/video/tegra/dc/dc.c
@@ -3148,6 +3148,16 @@ static int tegra_dc_probe(struct platform_device *ndev)
#endif
if (dc->pdata->flags & TEGRA_DC_FLAG_ENABLED) {
+ /* WAR: BL is putting DC in bad state for EDP configuration */
+ if (dc->out->type == TEGRA_DC_OUT_DP ||
+ dc->out->type == TEGRA_DC_OUT_NVSR_DP) {
+ clk_prepare_enable(dc->clk);
+ tegra_periph_reset_assert(dc->clk);
+ udelay(10);
+ tegra_periph_reset_deassert(dc->clk);
+ udelay(10);
+ clk_disable_unprepare(dc->clk);
+ }
_tegra_dc_set_default_videomode(dc);
dc->enabled = _tegra_dc_enable(dc);