[PATCH 00/12] Add TH1520 USB support
Icenowy Zheng
zhengxingda at iscas.ac.cn
Thu May 7 01:16:58 PDT 2026
This patchset adds support for T-Head TH1520's USB functionality, and
enabled it on the Lichee Pi 4A board.
The first 3 patches add support for the MISC subsystem clock
contrtoller, which contains some USB clocks.
The next 2 patches add support for the USB PHY of T-Head TH1520, which
is a wrapped Synopsys USB3.0 FemtoPHY with a little integration quirk;
the controller itself is a properly configured DWC3 controller with sane
default register values set.
Then one patch adds the USB PHY and controller nodes to the TH1520 DTSI
file.
The remaining half of this patchset dedicates to enablement of USB on
TH1520, because of the onboard hub of that board -- its USB2 signals are
behind a switch that needs to be toggled on, and Vbus supplies for both
the hub itself and downstream ports are managed via I2C-expanded GPIOs
(because the SoC does not have enough GPIO pins).
Emil Renner Berthing (1):
riscv: dts: thead: Add Lichee Pi 4A IO expansions
Icenowy Zheng (10):
dt-bindings: clock: thead: add TH1520 MISC subsys clock controller
clk: thead: th1520-ap: add support for MISC subsys clocks
riscv: dts: thead: add device tree node for MISC clock controller
dt-bindings: phy: add binding for T-Head TH1520 USB PHY
phy: add a driver for T-Head TH1520 USB PHY
riscv: dts: thead: add device nodes for USB
dt-bindings: gpio: dwapb: allow GPIO hogs
dt-bindings: usb: vialab,vl817: allow ports property
riscv: dts: thead: lpi4a: sort nodes
riscv: dts: thead: enable USB3 ports on Lichee Pi 4A
Thomas Bonnefille (1):
riscv: dts: thead: Add TH1520 I2C nodes
.../bindings/clock/thead,th1520-clk-ap.yaml | 5 +-
.../bindings/gpio/snps,dw-apb-gpio.yaml | 6 +
.../bindings/phy/thead,th1520-usb-phy.yaml | 74 ++++
.../devicetree/bindings/usb/vialab,vl817.yaml | 4 +-
.../dts/thead/th1520-lichee-module-4a.dtsi | 15 +
.../boot/dts/thead/th1520-lichee-pi-4a.dts | 362 +++++++++++++++++-
arch/riscv/boot/dts/thead/th1520.dtsi | 106 ++++-
drivers/clk/thead/clk-th1520-ap.c | 64 ++++
drivers/phy/Kconfig | 1 +
drivers/phy/Makefile | 1 +
drivers/phy/thead/Kconfig | 12 +
drivers/phy/thead/Makefile | 2 +
drivers/phy/thead/phy-th1520-usb.c | 197 ++++++++++
.../dt-bindings/clock/thead,th1520-clk-ap.h | 10 +
14 files changed, 840 insertions(+), 19 deletions(-)
create mode 100644 Documentation/devicetree/bindings/phy/thead,th1520-usb-phy.yaml
create mode 100644 drivers/phy/thead/Kconfig
create mode 100644 drivers/phy/thead/Makefile
create mode 100644 drivers/phy/thead/phy-th1520-usb.c
--
2.52.0
More information about the linux-phy
mailing list