diff options
author | Koen Kooi <koen@openembedded.org> | 2009-04-23 12:14:41 +0200 |
---|---|---|
committer | Koen Kooi <koen@openembedded.org> | 2009-04-23 12:14:41 +0200 |
commit | 2747c78c7c545a1188cfb255603f20e8ebf67475 (patch) | |
tree | 9f5492fd8f62635d53bc9683c0318123b6f2907f /recipes/linux/linux-omap-2.6.29/dss2/0053-DSS2-disable-LCD-DIGIT-before-resetting-DSS.patch | |
parent | 520b3470cbc3ff3005833e29ade04a7af2d73e22 (diff) |
linux-omap 2.6.29: add more dss2 patches, should solve problems when using u-boot splash
Diffstat (limited to 'recipes/linux/linux-omap-2.6.29/dss2/0053-DSS2-disable-LCD-DIGIT-before-resetting-DSS.patch')
-rw-r--r-- | recipes/linux/linux-omap-2.6.29/dss2/0053-DSS2-disable-LCD-DIGIT-before-resetting-DSS.patch | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/recipes/linux/linux-omap-2.6.29/dss2/0053-DSS2-disable-LCD-DIGIT-before-resetting-DSS.patch b/recipes/linux/linux-omap-2.6.29/dss2/0053-DSS2-disable-LCD-DIGIT-before-resetting-DSS.patch new file mode 100644 index 0000000000..f591fb700a --- /dev/null +++ b/recipes/linux/linux-omap-2.6.29/dss2/0053-DSS2-disable-LCD-DIGIT-before-resetting-DSS.patch @@ -0,0 +1,41 @@ +From c7ce3c5e9f7e28900b8ea9c3e1afe41dcdc0863d Mon Sep 17 00:00:00 2001 +From: Tomi Valkeinen <tomi.valkeinen@nokia.com> +Date: Thu, 23 Apr 2009 10:46:53 +0300 +Subject: [PATCH] DSS2: disable LCD & DIGIT before resetting DSS + +This seems to fix the synclost problem that we get, if the bootloader +starts the DSS and the kernel resets it. +--- + drivers/video/omap2/dss/dss.c | 8 +++++--- + 1 files changed, 5 insertions(+), 3 deletions(-) + +diff --git a/drivers/video/omap2/dss/dss.c b/drivers/video/omap2/dss/dss.c +index adc1f34..aab9758 100644 +--- a/drivers/video/omap2/dss/dss.c ++++ b/drivers/video/omap2/dss/dss.c +@@ -285,6 +285,11 @@ int dss_init(bool skip_init) + } + + if (!skip_init) { ++ /* disable LCD and DIGIT output. This seems to fix the synclost ++ * problem that we get, if the bootloader starts the DSS and ++ * the kernel resets it */ ++ omap_writel(omap_readl(0x48050440) & ~0x3, 0x48050440); ++ + /* We need to wait here a bit, otherwise we sometimes start to + * get synclost errors, and after that only power cycle will + * restore DSS functionality. I have no idea why this happens. +@@ -294,10 +299,7 @@ int dss_init(bool skip_init) + msleep(50); + + _omap_dss_reset(); +- + } +- else +- printk("DSS SKIP RESET\n"); + + /* autoidle */ + REG_FLD_MOD(DSS_SYSCONFIG, 1, 0, 0); +-- +1.5.6.5 + |