Message ID | 1455599573-16860-1-git-send-email-Qianyu.Gong@nxp.com |
---|---|
State | Accepted |
Delegated to: | York Sun |
Headers | show |
On 02/15/2016 09:21 PM, Gong Qianyu wrote: > Add USB XHCI support for ls1043qds board. > > Signed-off-by: Gong Qianyu <Qianyu.Gong@nxp.com> > --- > V2: > - Move the definition of scfg and usb_pwrfault in #ifdef CONFIG_HAS_FSL_XHCI_USB. > > board/freescale/ls1043aqds/ls1043aqds.c | 17 +++++++++++++++++ > include/configs/ls1043aqds.h | 13 +++++++++++++ > 2 files changed, 30 insertions(+) > > diff --git a/board/freescale/ls1043aqds/ls1043aqds.c b/board/freescale/ls1043aqds/ls1043aqds.c > index 01db078..4db2788 100644 > --- a/board/freescale/ls1043aqds/ls1043aqds.c > +++ b/board/freescale/ls1043aqds/ls1043aqds.c > @@ -223,10 +223,27 @@ void board_retimer_init(void) > > int board_early_init_f(void) > { > +#ifdef CONFIG_HAS_FSL_XHCI_USB > + struct ccsr_scfg *scfg = (struct ccsr_scfg *)CONFIG_SYS_FSL_SCFG_ADDR; > + u32 usb_pwrfault; > +#endif > #ifdef CONFIG_LPUART > u8 uart; > #endif > 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_SHARED << > + SCFG_USBPWRFAULT_USB3_SHIFT) | > + (SCFG_USBPWRFAULT_SHARED << > + SCFG_USBPWRFAULT_USB2_SHIFT) | > + (SCFG_USBPWRFAULT_SHARED << > + SCFG_USBPWRFAULT_USB1_SHIFT); > + out_be32(&scfg->usbpwrfault_selcr, usb_pwrfault); > +#endif > + Slightly reformat above lines. Applied to fsl-qoriq master. Awaiting upstream. York
diff --git a/board/freescale/ls1043aqds/ls1043aqds.c b/board/freescale/ls1043aqds/ls1043aqds.c index 01db078..4db2788 100644 --- a/board/freescale/ls1043aqds/ls1043aqds.c +++ b/board/freescale/ls1043aqds/ls1043aqds.c @@ -223,10 +223,27 @@ void board_retimer_init(void) int board_early_init_f(void) { +#ifdef CONFIG_HAS_FSL_XHCI_USB + struct ccsr_scfg *scfg = (struct ccsr_scfg *)CONFIG_SYS_FSL_SCFG_ADDR; + u32 usb_pwrfault; +#endif #ifdef CONFIG_LPUART u8 uart; #endif 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_SHARED << + SCFG_USBPWRFAULT_USB3_SHIFT) | + (SCFG_USBPWRFAULT_SHARED << + SCFG_USBPWRFAULT_USB2_SHIFT) | + (SCFG_USBPWRFAULT_SHARED << + SCFG_USBPWRFAULT_USB1_SHIFT); + out_be32(&scfg->usbpwrfault_selcr, usb_pwrfault); +#endif + #ifdef CONFIG_LPUART /* We use lpuart0 as system console */ uart = QIXIS_READ(brdcfg[14]); diff --git a/include/configs/ls1043aqds.h b/include/configs/ls1043aqds.h index 4ab8e13..158cf02 100644 --- a/include/configs/ls1043aqds.h +++ b/include/configs/ls1043aqds.h @@ -379,6 +379,19 @@ unsigned long get_board_ddr_clk(void); #endif #endif +/* USB */ +#define CONFIG_HAS_FSL_XHCI_USB +#ifdef CONFIG_HAS_FSL_XHCI_USB +#define CONFIG_USB_XHCI +#define CONFIG_USB_XHCI_FSL +#define CONFIG_USB_XHCI_DWC3 +#define CONFIG_USB_MAX_CONTROLLER_COUNT 3 +#define CONFIG_SYS_USB_XHCI_MAX_ROOT_PORTS 2 +#define CONFIG_CMD_USB +#define CONFIG_USB_STORAGE +#define CONFIG_CMD_EXT2 +#endif + /* * Miscellaneous configurable options */
Add USB XHCI support for ls1043qds board. Signed-off-by: Gong Qianyu <Qianyu.Gong@nxp.com> --- V2: - Move the definition of scfg and usb_pwrfault in #ifdef CONFIG_HAS_FSL_XHCI_USB. board/freescale/ls1043aqds/ls1043aqds.c | 17 +++++++++++++++++ include/configs/ls1043aqds.h | 13 +++++++++++++ 2 files changed, 30 insertions(+)