[U-Boot] [PATCH v1 00/18] Improvement for the DWC3 USB generic driver and fixes for the K2 platforms
Jean-Jacques Hiblot
jjhiblot at ti.com
Mon Apr 29 09:09:20 UTC 2019
Marek,
This series fixes the linux boot on the K2 platforms. without it the K2
platforms are broken. Can you give it a look please ?
Thanks,
JJ
On 05/04/2019 14:55, Jean-Jacques Hiblot wrote:
> The K2 platforms have shown boot issues after switching to the DWC3 generic
> driver. Those are due to the fact that the USB domains are not turned off
> before booting linux and the phy were not properly initialized. Fixing it
> by improving the DWC3-generic driver and handling the USB power domain in
> the PHY driver.
> At the same time this series introduce a new uclass (UCLASS_NOP) to replace
> usage of UCLASS_MISC in the USB wrapper because the MISC class now
> automatically binds all the child devices.
>
> Improvements to the DWC3 generic driver are:
> - Fix it by switching to UCLASS_NOP
> - core: read quirks properties from DT and apply the fixes.
> - add a new host driver that uses the DWC3 core (more generic than
> xhci-dwc3). This should enable most platforms to drop their own version
> of the xhci-driver to use the generic one instead.
>
> This series also removes the now unused xhci-zynqmp driver and tries to
> better manage the Kconfig options related to DWC3 gadget/host mode
> selection.
>
> This has been tested with K2 and DRA7 platforms (host and device modes).
> Travis build: https://travis-ci.org/jjhiblot/u-boot/builds/515282720
>
>
> Jean-Jacques Hiblot (18):
> usb: dwc3-generic: remove dm_scan_fdt_dev() from the remove() callback
> usb: host: remove the xhci-zynqmp driver
> dm: Add a No-op uclass
> usb: dwc3: Use UCLASS_NOP instead of UCLASS_MISC for the DWC3 generic
> glue
> usb: dwc3: switch to peripheral mode when exiting
> usb: xhci: move xhci.h to include usb
> usb: dwc3: always use the inlined version of
> dwc3_host_init/dwc3_host_exit
> usb: dwc3-generic: use platdata
> usb: dwc3-generic: factorize code
> usb: dwc3-generic: add a new host driver that uses the dwc3 core
> usb: dwc3-generic: if no max speed is specified in DT, assume super
> speed
> usb: dwc3: Add dwc3_of_parse() to get quirks information from DT
> usb: dwc3: Kconfig: get rid of obsolete mode selection
> ARM: keystone: increase PSC timeout
> ARM: keystone: Do not enable the USB power domains at the board level
> phy: keystone-usb: handle the transition of the USB power domain
> configs: k2g_evm_defconfig: disable XHCI_DWC3 and enable
> KEYSTONE_USB_PHY
> ARM: DTS: keystone: complete the description of the USB PHY devices
>
> MAINTAINERS | 1 +
> arch/arm/dts/keystone-k2e-evm-u-boot.dtsi | 32 ++++
> arch/arm/dts/keystone-k2g-evm-u-boot.dtsi | 28 ++++
> arch/arm/dts/keystone-k2hk-evm-u-boot.dtsi | 14 ++
> arch/arm/dts/keystone-k2l-evm-u-boot.dtsi | 18 +++
> .../arm/mach-keystone/include/mach/psc_defs.h | 2 +-
> board/ti/ks2_evm/board.c | 13 --
> configs/avnet_ultra96_rev1_defconfig | 1 -
> configs/evb-rk3328_defconfig | 1 +
> configs/k2g_evm_defconfig | 3 +-
> .../xilinx_zynqmp_zc1751_xm015_dc1_defconfig | 1 -
> .../xilinx_zynqmp_zc1751_xm016_dc2_defconfig | 1 -
> .../xilinx_zynqmp_zc1751_xm017_dc3_defconfig | 1 -
> configs/xilinx_zynqmp_zcu100_revC_defconfig | 1 -
> configs/xilinx_zynqmp_zcu102_rev1_0_defconfig | 1 -
> configs/xilinx_zynqmp_zcu102_revA_defconfig | 1 -
> configs/xilinx_zynqmp_zcu102_revB_defconfig | 1 -
> configs/xilinx_zynqmp_zcu104_revA_defconfig | 1 -
> configs/xilinx_zynqmp_zcu104_revC_defconfig | 1 -
> configs/xilinx_zynqmp_zcu106_revA_defconfig | 1 -
> configs/xilinx_zynqmp_zcu111_revA_defconfig | 1 -
> drivers/core/uclass.c | 5 +
> drivers/phy/keystone-usb-phy.c | 22 +++
> drivers/usb/dwc3/Kconfig | 20 +--
> drivers/usb/dwc3/core.c | 84 +++++++++-
> drivers/usb/dwc3/core.h | 6 +-
> drivers/usb/dwc3/dwc3-generic.c | 150 ++++++++++++++----
> drivers/usb/host/Kconfig | 7 -
> drivers/usb/host/Makefile | 1 -
> drivers/usb/host/xhci-dwc3.c | 2 +-
> drivers/usb/host/xhci-exynos5.c | 2 +-
> drivers/usb/host/xhci-fsl.c | 2 +-
> drivers/usb/host/xhci-mem.c | 2 +-
> drivers/usb/host/xhci-mvebu.c | 2 +-
> drivers/usb/host/xhci-omap.c | 2 +-
> drivers/usb/host/xhci-pci.c | 2 +-
> drivers/usb/host/xhci-rcar.c | 2 +-
> drivers/usb/host/xhci-ring.c | 2 +-
> drivers/usb/host/xhci-rockchip.c | 2 +-
> drivers/usb/host/xhci-zynqmp.c | 146 -----------------
> drivers/usb/host/xhci.c | 2 +-
> drivers/usb/phy/omap_usb_phy.c | 2 +-
> include/dm/uclass-id.h | 1 +
> {drivers/usb/host => include/usb}/xhci.h | 0
> 44 files changed, 335 insertions(+), 255 deletions(-)
> create mode 100644 arch/arm/dts/keystone-k2l-evm-u-boot.dtsi
> delete mode 100644 drivers/usb/host/xhci-zynqmp.c
> rename {drivers/usb/host => include/usb}/xhci.h (100%)
>
More information about the U-Boot
mailing list