summaryrefslogtreecommitdiff
path: root/board/freescale/mx6slevk
diff options
context:
space:
mode:
authorNitin Garg <nitin.garg@freescale.com>2014-05-27 18:40:51 -0500
committerNitin Garg <nitin.garg@freescale.com>2014-06-13 10:17:01 -0500
commit9887413a1bc0554469f20e3b4511878881563dfc (patch)
treec1a78791f20272396499fba7e5c3c0fd39e03894 /board/freescale/mx6slevk
parent6d87677d499f71a0ed3994f414bdbf9a7e6a4099 (diff)
downloadu-boot-imx-9887413a1bc0554469f20e3b4511878881563dfc.zip
u-boot-imx-9887413a1bc0554469f20e3b4511878881563dfc.tar.gz
u-boot-imx-9887413a1bc0554469f20e3b4511878881563dfc.tar.bz2
ENGR00315499-15 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> Signed-off-by: Nitin Garg <nitin.garg@freescale.com>
Diffstat (limited to 'board/freescale/mx6slevk')
-rw-r--r--board/freescale/mx6slevk/mx6slevk.c29
1 files changed, 29 insertions, 0 deletions
diff --git a/board/freescale/mx6slevk/mx6slevk.c b/board/freescale/mx6slevk/mx6slevk.c
index ac0b1f3..1c433c2 100644
--- a/board/freescale/mx6slevk/mx6slevk.c
+++ b/board/freescale/mx6slevk/mx6slevk.c
@@ -859,3 +859,32 @@ int checkboard(void)
return 0;
}
+
+#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