[PATCH v5 0/3] phy: Add CIX Sky1 USB3 PHY support
Hongliang Yang (杨宏亮)
hongliang.yang at cixtech.com
Mon Nov 2 23:49:17 PST 2026
This series adds support for the USB3 PHY integrated in the CIX Sky1
SoC.
Patch 1 adds the device tree binding, patch 2 the PHY driver, and
patch 3 the SoC node plus the board enablement.
The PHY provides the SuperSpeed lanes for the Cadence USBSSP
controllers of the SoC. The block is multi-port: one instance is
exposed per controller port, and each instance handles its own reset
and clock management and the PIPE/PLL initialisation sequence.
Tested on Radxa Orion O6 (Sky1) together with the USBSSP controller
series: the PHY probes for both ports and USB 3.x devices enumerate at
SuperSpeed.
The controller device tree nodes use the PHY phandles added here; the
USBSSP controller series is posted separately.
The series applies on top of v7.4-rc1.
Changes since v4:
- Added the MAINTAINERS entries for the binding and the driver
directory.
- Documented the origin of the PHY initialization sequence.
- Return -ENODEV instead of -EINVAL when the OF match data is missing.
- Use dev_err_probe() when creating the child PHYs.
- Dropped the unused dev_set_drvdata() call.
- Guarded against underflow in sky1_u3phy_exit().
- Fixed the #size-cells property order and removed the unused phy.h
include and the redundant status properties of the PHY port nodes.
Hongliang Yang (3):
dt-bindings: phy: Add CIX Sky1 USB3 PHY
phy: cix: Add CIX Sky1 USB3 PHY driver
arm64: dts: cix: Add USB3 PHY nodes for Sky1
.../bindings/phy/cix,sky1-usb3-phy.yaml | 107 +++++
MAINTAINERS | 2 +
arch/arm64/boot/dts/cix/sky1-orion-o6.dts | 4 +
arch/arm64/boot/dts/cix/sky1.dtsi | 25 ++
drivers/phy/Kconfig | 1 +
drivers/phy/Makefile | 1 +
drivers/phy/cix/Kconfig | 20 +
drivers/phy/cix/Makefile | 6 +
drivers/phy/cix/phy-cix-usb3.c | 418 ++++++++++++++++++
drivers/phy/cix/phy-cix-usbdp.h | 289 ++++++++++++
10 files changed, 873 insertions(+)
create mode 100644 Documentation/devicetree/bindings/phy/cix,sky1-usb3-phy.yaml
create mode 100644 drivers/phy/cix/Kconfig
create mode 100644 drivers/phy/cix/Makefile
create mode 100644 drivers/phy/cix/phy-cix-usb3.c
create mode 100644 drivers/phy/cix/phy-cix-usbdp.h
base-commit: 6628e7d4c6b25c8d18f1345e3a20d21829aae7e4
--
2.54.0
More information about the linux-arm-kernel
mailing list