This series adds USB host support for the SpacemiT K1: a driver for the K1's USB 2.0 (UTMI) PHY, and a flat-node entry for the SoC's DWC3 controller in dwc3-generic, which already handles clocks, resets, PHYs and the host child for other flat-node SoCs. No K1-specific glue is needed. USB 3 additionally needs the posted combo PHY series [1].
The patches apply to next at bd2f5794 and to current next (ed869863). dwc3-generic.c is not touched by the pending DWC3 resync [2], so they apply there too; the test builds below carried that resync (v9). Tested on the OrangePi R2S and RV2 on October 5 with next bd2f5794, the posted K1 clock, MMC, PHY, PCIe and SPL fixes, the DWC3 resync v9 and these two patches (plus local hub-scan logging and an xHCI stop-path change that are under separate review and do not change enumeration): - R2S: a USB 3.0 stick on the root port enumerates at 5 Gb/s. Each check is two 64 MiB raw reads into differently prefilled buffers, byte compare and SHA-256 against a FAT copy of the same data; the initial three pairs, then one pair after each of three 'usb reset' and after 'usb stop' / 'usb start', all passed at 5 Gb/s with no host-halt warning. - RV2: the same stick behind a Genesys USB 3 hub; same checks, same results. In an earlier run the stick once failed to re-enumerate after the second and third 'usb reset'; that did not reproduce with hub scan logging enabled and is being looked at in the generic hub scan separately. It is not specific to these two patches. - On both boards the FreeBSD EFI loader read from the stick selects its own partition unaided and boots the kernel on the stick with the board's native root (eMMC on R2S, NVMe on RV2). Sandbox builds and the existing DWC3 flat-node users are unaffected. [1] https://lists.u-boot-project.org/pipermail/u-boot/2026-October/633775.html [2] https://lists.u-boot-project.org/pipermail/u-boot/2026-October/633722.html Dave Klotz (2): phy: spacemit: add K1 USB 2.0 PHY driver usb: dwc3: generic: add SpacemiT K1 support MAINTAINERS | 1 + drivers/phy/spacemit/Kconfig | 9 ++ drivers/phy/spacemit/Makefile | 1 + drivers/phy/spacemit/phy-k1-usb2.c | 173 +++++++++++++++++++++++++++++ drivers/usb/dwc3/dwc3-generic.c | 13 +-- 5 files changed, 191 insertions(+), 6 deletions(-)
