summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAneesh V <aneesh@ti.com>2011-11-21 23:39:05 +0000
committerAlbert ARIBAUD <albert.u.boot@aribaud.net>2011-12-06 23:59:34 +0100
commit23e9f0723e48615332119de4f4ec7a833a282628 (patch)
tree0445f391e2c34cc2404e56200813e62e6413d4bf
parentf6ddfdd3a92e2906c87c521deae46e509bd0bf3d (diff)
downloadu-boot-imx-23e9f0723e48615332119de4f4ec7a833a282628.zip
u-boot-imx-23e9f0723e48615332119de4f4ec7a833a282628.tar.gz
u-boot-imx-23e9f0723e48615332119de4f4ec7a833a282628.tar.bz2
omap4: fix IO setting
The value from TRIM is not working for some 4430 silicons. So, override with hw team recommended value. However, for 4460 TRIM value shall be used as long as the part is trimmed This fixes boot problem on some OMAP4430 ES2.0 Panda boards out there. Cc: Steve Sakoman <sakoman@gmail.com> Signed-off-by: Aneesh V <aneesh@ti.com>
-rw-r--r--arch/arm/cpu/armv7/omap4/hwinit.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/arch/arm/cpu/armv7/omap4/hwinit.c b/arch/arm/cpu/armv7/omap4/hwinit.c
index cd1451a..37a86b4 100644
--- a/arch/arm/cpu/armv7/omap4/hwinit.c
+++ b/arch/arm/cpu/armv7/omap4/hwinit.c
@@ -105,7 +105,12 @@ void do_io_settings(void)
&ctrl->control_ldosram_core_voltage_ctrl);
}
- if (!readl(&ctrl->control_efuse_1))
+ /*
+ * Over-ride the register
+ * i. unconditionally for all 4430
+ * ii. only if un-trimmed for 4460
+ */
+ if ((omap4_rev < OMAP4460_ES1_0) || !readl(&ctrl->control_efuse_1))
writel(CONTROL_EFUSE_1_OVERRIDE, &ctrl->control_efuse_1);
if (!readl(&ctrl->control_efuse_2))