[PATCH 0/6] Allwinner H6 USB3 support

Samuel Holland samuel at sholland.org
Mon Feb 8 06:57:18 CET 2021


This series adds clock, PHY, and XHCI driver support for the USB3
controller found in the Allwinner H6 SoC. Below is a log showing it
functioning on the Orange Pi 3.

Cheers,
Samuel

U-Boot 2021.04-rc1-00068-g6b8f4e0d060 (Jan 01 1970 - 00:00:00 +0000) Allwinner Technology

CPU:   Allwinner H6 (SUN50I)
Model: OrangePi 3
DRAM:  2 GiB
MMC:   mmc at 4020000: 0, mmc at 4021000: 2, mmc at 4022000: 1
Loading Environment from FAT... Unable to use mmc 1:0... In:    serial at 5000000
Out:   serial at 5000000
Err:   serial at 5000000
Net:   No ethernet found.
starting USB...
Bus usb at 5101000: USB EHCI 1.00
Bus usb at 5101400: USB OHCI 1.0
Bus usb at 5200000: Register 2000140 NbrPorts 2
Starting the controller
USB XHCI 1.00
Bus usb at 5311000: USB EHCI 1.00
Bus usb at 5311400: USB OHCI 1.0
scanning bus usb at 5101000 for devices... 1 USB Device(s) found
scanning bus usb at 5101400 for devices... 1 USB Device(s) found
scanning bus usb at 5200000 for devices... 4 USB Device(s) found
scanning bus usb at 5311000 for devices... 1 USB Device(s) found
scanning bus usb at 5311400 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 1 Storage Device(s) found
Hit any key to stop autoboot:  0 
=> usb tree
USB device tree:
  1  Hub (480 Mb/s, 0mA)
     u-boot EHCI Host Controller 
   
  1  Hub (12 Mb/s, 0mA)
      U-Boot Root Hub 
   
  1  Hub (5 Gb/s, 0mA)
  |  U-Boot XHCI Host Controller 
  |
  +-2  Hub (5 Gb/s, 0mA)
  | |  GenesysLogic USB3.1 Hub 
  | |
  | +-4  Mass Storage (5 Gb/s, 224mA)
  |                                071044991D8D6A81
  |    
  +-3  Hub (480 Mb/s, 100mA)
       GenesysLogic USB2.1 Hub 
     
  1  Hub (480 Mb/s, 0mA)
     u-boot EHCI Host Controller 
   
  1  Hub (12 Mb/s, 0mA)
      U-Boot Root Hub 

Samuel Holland (6):
  clk: sunxi: Add a dummy clock driver for the RTC
  clk: sunxi: h6: Add XHCI clocks
  phy: sun50i-usb3: Add a driver for the H6 USB3 PHY
  usb: xhci-pci: Move reset logic out of XHCI core
  usb: xhci-dwc3: Add support for clocks/resets
  configs: Enable USB3 on Allwinner H6 boards

 configs/orangepi_3_defconfig            |   5 +
 configs/pine_h64_defconfig              |   5 +
 drivers/clk/sunxi/Makefile              |   2 +
 drivers/clk/sunxi/clk_h6.c              |   2 +
 drivers/clk/sunxi/clk_sun6i_rtc.c       |  35 +++++
 drivers/phy/allwinner/Kconfig           |   8 ++
 drivers/phy/allwinner/Makefile          |   1 +
 drivers/phy/allwinner/phy-sun50i-usb3.c | 171 ++++++++++++++++++++++++
 drivers/usb/host/xhci-dwc3.c            |  56 ++++++++
 drivers/usb/host/xhci-mem.c             |   2 -
 drivers/usb/host/xhci-pci.c             |  38 +++++-
 drivers/usb/host/xhci.c                 |  35 -----
 include/usb/xhci.h                      |   2 -
 13 files changed, 321 insertions(+), 41 deletions(-)
 create mode 100644 drivers/clk/sunxi/clk_sun6i_rtc.c
 create mode 100644 drivers/phy/allwinner/phy-sun50i-usb3.c

-- 
2.26.2



More information about the U-Boot mailing list