summaryrefslogtreecommitdiff
path: root/board
diff options
context:
space:
mode:
authorGong Qianyu <Qianyu.Gong@freescale.com>2015-11-11 17:58:40 +0800
committerYork Sun <yorksun@freescale.com>2015-11-30 09:11:11 -0800
commit7023100971c96b043b0aee669c45d1fcb3e8557b (patch)
tree5484e3926954a71803451b350d3567062f6388ec /board
parent28752cf83b115aff7f27df2e52f4c69399dd95c6 (diff)
downloadu-boot-imx-7023100971c96b043b0aee669c45d1fcb3e8557b.zip
u-boot-imx-7023100971c96b043b0aee669c45d1fcb3e8557b.tar.gz
u-boot-imx-7023100971c96b043b0aee669c45d1fcb3e8557b.tar.bz2
armv8/ls1043ardb: add USB support
Add support for the third USB controller for LS1043A. Signed-off-by: Gong Qianyu <Qianyu.Gong@freescale.com> Reviewed-by: York Sun <yorksun@freescale.com>
Diffstat (limited to 'board')
-rw-r--r--board/freescale/ls1043ardb/ls1043ardb.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/board/freescale/ls1043ardb/ls1043ardb.c b/board/freescale/ls1043ardb/ls1043ardb.c
index 9032ed3..cdd50d6 100644
--- a/board/freescale/ls1043ardb/ls1043ardb.c
+++ b/board/freescale/ls1043ardb/ls1043ardb.c
@@ -69,7 +69,23 @@ int dram_init(void)
int board_early_init_f(void)
{
+ struct ccsr_scfg *scfg = (struct ccsr_scfg *)CONFIG_SYS_FSL_SCFG_ADDR;
+ u32 usb_pwrfault;
+
fsl_lsch2_early_init_f();
+
+#ifdef CONFIG_HAS_FSL_XHCI_USB
+ out_be32(&scfg->rcwpmuxcr0, 0x3333);
+ out_be32(&scfg->usbdrvvbus_selcr, SCFG_USBDRVVBUS_SELCR_USB1);
+ usb_pwrfault = (SCFG_USBPWRFAULT_DEDICATED <<
+ SCFG_USBPWRFAULT_USB3_SHIFT) |
+ (SCFG_USBPWRFAULT_DEDICATED <<
+ SCFG_USBPWRFAULT_USB2_SHIFT) |
+ (SCFG_USBPWRFAULT_SHARED <<
+ SCFG_USBPWRFAULT_USB1_SHIFT);
+ out_be32(&scfg->usbpwrfault_selcr, usb_pwrfault);
+#endif
+
return 0;
}