[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