aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/omap24xx/patches-3.1/312-no-hwmod-reset.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/omap24xx/patches-3.1/312-no-hwmod-reset.patch')
-rw-r--r--target/linux/omap24xx/patches-3.1/312-no-hwmod-reset.patch30
1 files changed, 30 insertions, 0 deletions
diff --git a/target/linux/omap24xx/patches-3.1/312-no-hwmod-reset.patch b/target/linux/omap24xx/patches-3.1/312-no-hwmod-reset.patch
new file mode 100644
index 0000000000..f0fe027536
--- /dev/null
+++ b/target/linux/omap24xx/patches-3.1/312-no-hwmod-reset.patch
@@ -0,0 +1,30 @@
+Index: linux-3.1/arch/arm/mach-omap2/omap_hwmod.c
+===================================================================
+--- linux-3.1.orig/arch/arm/mach-omap2/omap_hwmod.c 2011-10-30 21:20:19.205515660 +0100
++++ linux-3.1/arch/arm/mach-omap2/omap_hwmod.c 2011-10-30 21:28:16.769945954 +0100
+@@ -145,6 +145,8 @@
+ #include <plat/omap_hwmod.h>
+ #include <plat/prcm.h>
+
++#include <asm/mach-types.h>
++
+ #include "cm2xxx_3xxx.h"
+ #include "cminst44xx.h"
+ #include "prm2xxx_3xxx.h"
+@@ -1704,6 +1706,16 @@ static int _setup(struct omap_hwmod *oh,
+
+ oh->_state = _HWMOD_STATE_INITIALIZED;
+
++ if (machine_is_nokia770() ||
++ machine_is_nokia_n800() ||
++ machine_is_nokia_n810() ||
++ machine_is_nokia_n810_wimax()) {
++ /* Nokia N-series workaround: Don't reset any hwmod. Some drivers expect
++ * the NOLO bootloader initializations to be effective. */
++ oh->flags |= HWMOD_INIT_NO_RESET;
++ printk_once(KERN_INFO "Nokia N-series HWMOD_INIT_NO_RESET workaround enabled\n");
++ }
++
+ /*
+ * In the case of hwmod with hardreset that should not be
+ * de-assert at boot time, we have to keep the module