
This patch demonstrates the usage of the alternative method for HSIC devices reset (via the ehci-hcd and omap-ehci drivers, where this method is implemented through a separate patch; must be applied prior to this one). Board functionality is not altered; a minor improvement is the removal of the second call to omap_ehci_hcd_init() after reset which is not needed anymore.
On some other OMAP4/5 boards however this is the only method that works.
Signed-off-by: Lubomir Popov l-popov@ti.com --- board/ti/omap5_uevm/evm.c | 2 ++ include/configs/omap5_uevm.h | 13 ++++++++++--- 2 files changed, 12 insertions(+), 3 deletions(-)
diff --git a/board/ti/omap5_uevm/evm.c b/board/ti/omap5_uevm/evm.c index af854da..cae9fd8 100644 --- a/board/ti/omap5_uevm/evm.c +++ b/board/ti/omap5_uevm/evm.c @@ -210,6 +210,7 @@ int ehci_hcd_stop(void) return ret; }
+#if !defined(CONFIG_OMAP_HSIC_PORT3_RESET_GPIO) void usb_hub_reset_devices(int port) { /* The LAN9730 needs to be reset after the port power has been set. */ @@ -220,6 +221,7 @@ void usb_hub_reset_devices(int port) } } #endif +#endif
#ifdef CONFIG_USB_XHCI_OMAP /** diff --git a/include/configs/omap5_uevm.h b/include/configs/omap5_uevm.h index 2f128b8..96b5f23 100644 --- a/include/configs/omap5_uevm.h +++ b/include/configs/omap5_uevm.h @@ -50,10 +50,17 @@ #define CONFIG_USB_EHCI_OMAP #define CONFIG_USB_STORAGE #define CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS 3 -#define CONFIG_EHCI_HCD_INIT_AFTER_RESET +/*#define CONFIG_EHCI_HCD_INIT_AFTER_RESET*/
-#define CONFIG_OMAP_EHCI_PHY2_RESET_GPIO 80 -#define CONFIG_OMAP_EHCI_PHY3_RESET_GPIO 79 +/* No ULPI PHYs on this board */ +/*#define CONFIG_OMAP_EHCI_PHY2_RESET_GPIO 80*/ +/*#define CONFIG_OMAP_EHCI_PHY3_RESET_GPIO 79*/ +/* + * Due to HSIC connect ussues with some devices, a reset is required + * upon applying port power. A GPIO is needed per HSIC device: + */ +#define CONFIG_OMAP_HSIC_PORT2_RESET_GPIO 80 /* Hub */ +#define CONFIG_OMAP_HSIC_PORT3_RESET_GPIO 79 /* Ethernet Ctrlr */
/* Enabled commands */ #define CONFIG_CMD_DHCP /* DHCP Support */