[U-Boot] [PATCH 1/2] arm: add usb-phy init support for Kirkwood SoCs
Prafulla Wadaskar
prafulla at marvell.com
Tue Jun 23 21:20:04 CEST 2009
On kirkwood by default USB PHY is disabled
and from Linux-2.6.29 onward, phy_version for kirkwood platforms
are programmed to EHCI_PHY_NA, expecting such platform specific
setup should be done by boot loader
This patch provides arch specific requirement for usb-phy init
Signed-off-by: Prafulla Wadaskar <prafulla at marvell.com>
---
cpu/arm926ejs/kirkwood/cpu.c | 9 +++++++++
include/asm-arm/arch-kirkwood/cpu.h | 1 +
include/asm-arm/arch-kirkwood/kirkwood.h | 1 +
3 files changed, 11 insertions(+), 0 deletions(-)
diff --git a/cpu/arm926ejs/kirkwood/cpu.c b/cpu/arm926ejs/kirkwood/cpu.c
index 194ba1c..1f6d014 100644
--- a/cpu/arm926ejs/kirkwood/cpu.c
+++ b/cpu/arm926ejs/kirkwood/cpu.c
@@ -260,6 +260,15 @@ int arch_cpu_init(void)
reg &= ~(1 << 4); /* Clear PortReset Bit */
writel(reg, (KWGBE_PORT_SERIAL_CONTROL1_REG(1)));
#endif
+#ifdef CONFIG_KIRKWOOD_USBPHY_INIT
+ /*
+ * On kirkwood by default USB PHY is disabled
+ * and from Linux-2.6.29 onward, ehci kernel driver has changed
+ * expecting such platform specific init should be done by boot
+ * loader
+ */
+ orion_usb_phy_v1_setup();
+#endif /* CONFIG_KIRKWOOD_USBPHY_INIT */
#ifdef CONFIG_KIRKWOOD_PCIE_INIT
/*
* Enable PCI Express Port0
diff --git a/include/asm-arm/arch-kirkwood/cpu.h b/include/asm-arm/arch-kirkwood/cpu.h
index 36064ae..30a4bfa 100644
--- a/include/asm-arm/arch-kirkwood/cpu.h
+++ b/include/asm-arm/arch-kirkwood/cpu.h
@@ -155,5 +155,6 @@ int kw_config_mpp(unsigned int mpp0_7, unsigned int mpp8_15,
unsigned int mpp16_23, unsigned int mpp24_31,
unsigned int mpp32_39, unsigned int mpp40_47,
unsigned int mpp48_55);
+void orion_usb_phy_v1_setup(void);
#endif /* __ASSEMBLY__ */
#endif /* _KWCPU_H */
diff --git a/include/asm-arm/arch-kirkwood/kirkwood.h b/include/asm-arm/arch-kirkwood/kirkwood.h
index d5f25f9..52dafc2 100644
--- a/include/asm-arm/arch-kirkwood/kirkwood.h
+++ b/include/asm-arm/arch-kirkwood/kirkwood.h
@@ -55,6 +55,7 @@
#define KW_CPU_REG_BASE (KW_REGISTER(0x20100))
#define KW_TIMER_BASE (KW_REGISTER(0x20300))
#define KW_REG_PCIE_BASE (KW_REGISTER(0x40000))
+#define KW_USB20_BASE (KW_REGISTER(0x50000))
#define KW_EGIGA0_BASE (KW_REGISTER(0x72000))
#define KW_EGIGA1_BASE (KW_REGISTER(0x76000))
--
1.5.3.3
More information about the U-Boot
mailing list