summaryrefslogtreecommitdiff
path: root/board
diff options
context:
space:
mode:
authorYe.Li <B37916@freescale.com>2014-01-14 13:29:14 +0800
committerYe.Li <B37916@freescale.com>2014-01-17 11:46:14 +0800
commit38609c7a839043bf6cb1c65b618bcebdf34cc633 (patch)
tree716eca42b55c53665ecb43f40d13277a4cbce43e /board
parent2257b311a1f1ba449eaf8e43451f229a08a173dd (diff)
downloadu-boot-imx-38609c7a839043bf6cb1c65b618bcebdf34cc633.zip
u-boot-imx-38609c7a839043bf6cb1c65b618bcebdf34cc633.tar.gz
u-boot-imx-38609c7a839043bf6cb1c65b618bcebdf34cc633.tar.bz2
ENGR00294905 ARM:imx6sl:evk Add USB HOST support
Enable the USB EHCI for the imx6slevk board. Add VBUS control pin settings and related BSP codes. Signed-off-by: Ye.Li <B37916@freescale.com> (cherry picked from commit 712f9f6ae901f03115b27ad7a4c000276334591a)
Diffstat (limited to 'board')
-rw-r--r--board/freescale/mx6slevk/mx6slevk.c31
1 files changed, 30 insertions, 1 deletions
diff --git a/board/freescale/mx6slevk/mx6slevk.c b/board/freescale/mx6slevk/mx6slevk.c
index bc119b3..67990c8 100644
--- a/board/freescale/mx6slevk/mx6slevk.c
+++ b/board/freescale/mx6slevk/mx6slevk.c
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2013 Freescale Semiconductor, Inc.
+ * Copyright (C) 2013-2014 Freescale Semiconductor, Inc.
*
* Author: Fabio Estevam <fabio.estevam@freescale.com>
*
@@ -729,3 +729,32 @@ void udc_pins_setting(void)
ARRAY_SIZE(otg_udc_pads));
}
#endif /*CONFIG_IMX_UDC*/
+
+#ifdef CONFIG_USB_EHCI_MX6
+iomux_v3_cfg_t const usb_otg1_pads[] = {
+ MX6_PAD_KEY_COL4__USB_USBOTG1_PWR | MUX_PAD_CTRL(NO_PAD_CTRL),
+ MX6_PAD_EPDC_PWRCOM__ANATOP_USBOTG1_ID | MUX_PAD_CTRL(NO_PAD_CTRL)
+};
+
+iomux_v3_cfg_t const usb_otg2_pads[] = {
+ MX6_PAD_KEY_COL5__USB_USBOTG2_PWR | MUX_PAD_CTRL(NO_PAD_CTRL),
+};
+
+int board_ehci_hcd_init(int port)
+{
+ switch (port) {
+ case 0:
+ imx_iomux_v3_setup_multiple_pads(usb_otg1_pads,
+ ARRAY_SIZE(usb_otg1_pads));
+ break;
+ case 1:
+ imx_iomux_v3_setup_multiple_pads(usb_otg2_pads,
+ ARRAY_SIZE(usb_otg2_pads));
+ break;
+ default:
+ printf("MXC USB port %d not yet supported\n", port);
+ return 1;
+ }
+ return 0;
+}
+#endif