diff mbox

[U-Boot] fsl/usb: Fix phy type for Second USB controller

Message ID 1387431526-24770-1-git-send-email-B46172@freescale.com
State Accepted
Delegated to: York Sun
Headers show

Commit Message

Nikhil Badola Dec. 19, 2013, 5:38 a.m. UTC
Set correct phy_type value for second USB controller.
This is required for supporting SOCs having 2 USB controllers
working simultaneously, one with UTMI phy and other with ULPI phy

Signed-off-by: Nikhil Badola <B46172@freescale.com>
---
 drivers/usb/host/ehci-fsl.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

Comments

York Sun April 23, 2014, 10:30 p.m. UTC | #1
On 12/18/2013 09:38 PM, Nikhil Badola wrote:
> Set correct phy_type value for second USB controller.
> This is required for supporting SOCs having 2 USB controllers
> working simultaneously, one with UTMI phy and other with ULPI phy
> 
> Signed-off-by: Nikhil Badola <B46172@freescale.com>
> ---


Applied to u-boot-mpc85xx/master, thanks.

York
diff mbox

Patch

diff --git a/drivers/usb/host/ehci-fsl.c b/drivers/usb/host/ehci-fsl.c
index 45e5d6a..0d19daa 100644
--- a/drivers/usb/host/ehci-fsl.c
+++ b/drivers/usb/host/ehci-fsl.c
@@ -41,11 +41,14 @@  int ehci_hcd_init(int index, enum usb_init_type init,
 	struct usb_ehci *ehci = NULL;
 	const char *phy_type = NULL;
 	size_t len;
+	char current_usb_controller[5];
 #ifdef CONFIG_SYS_FSL_USB_INTERNAL_UTMI_PHY
 	char usb_phy[5];
 
 	usb_phy[0] = '\0';
 #endif
+	memset(current_usb_controller, '\0', 5);
+	snprintf(current_usb_controller, 4, "usb%d", index+1);
 
 	switch (index) {
 	case 0:
@@ -70,8 +73,9 @@  int ehci_hcd_init(int index, enum usb_init_type init,
 	out_be32(&ehci->snoop2, 0x80000000 | SNOOP_SIZE_2GB);
 
 	/* Init phy */
-	if (hwconfig_sub("usb1", "phy_type"))
-		phy_type = hwconfig_subarg("usb1", "phy_type", &len);
+	if (hwconfig_sub(current_usb_controller, "phy_type"))
+		phy_type = hwconfig_subarg(current_usb_controller,
+				"phy_type", &len);
 	else
 		phy_type = getenv("usb_phy_type");