[U-Boot] [PATCH] arm: omap: Fix 'get_device_type()' for OMAP34XX

Derald D. Woods woods.technical at gmail.com
Sun Jul 30 23:51:11 UTC 2017


Fixes 00bbe96ebabb (arm: omap: Unify get_device_type() function) where
the control status register value is embedded in a structure somewhere
in SRAM. This patch allows OMAP3 EVM (TMDSEVM3530) to boot again using
a known global constant and offset for 'readl'.
---
 arch/arm/mach-omap2/sysinfo-common.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/arch/arm/mach-omap2/sysinfo-common.c b/arch/arm/mach-omap2/sysinfo-common.c
index 1dc7051ab3..3955e803ad 100644
--- a/arch/arm/mach-omap2/sysinfo-common.c
+++ b/arch/arm/mach-omap2/sysinfo-common.c
@@ -16,6 +16,10 @@
  */
 u32 get_device_type(void)
 {
+#if defined(CONFIG_OMAP34XX)
+	return (readl(OMAP34XX_CTRL_BASE + 0x2f0) & DEVICE_TYPE_MASK) >>
+		DEVICE_TYPE_SHIFT;
+#endif
 	return (readl((*ctrl)->control_status) & DEVICE_TYPE_MASK) >>
 		DEVICE_TYPE_SHIFT;
 }
-- 
2.13.3



More information about the U-Boot mailing list