[PATCH 0/3] Add usb-role-switch support for USB Type-C ports on Shikra

From: Akash Kumar

Date: Thu Aug 20 2026 - 10:54:55 EST


The USB DT support series for Shikra ("Add DT Support for USB on
Shikra") enabled both USB controllers in device mode, since role
switching support was not yet present:

https://lore.kernel.org/all/20260811-usb-shikra-v7-v7-2-753e928f37ae@xxxxxxxxxxxxxxxx/

This series adds that role-switching support. On Shikra CQS/CQM
platforms, usb-role-switch is handled by PM4125 on the primary
Type-C port and Cypress PD controller CYPD6129 on the second Type-C
port. On Shikra IQS platform, usb-role-switch is handled by Cypress
PD controller CYPD6129 on both Type-C ports.

Patch 1 adds the device-tree binding for the CYPD6129/CYPD6229 dual
Type-C PD controllers. Patch 2 adds the corresponding compatible
strings to the ucsi_ccg driver's of_device_id table so it binds to
boards describing these controllers. Patch 3 wires up the CYPD6129
typec node on the affected Shikra boards and switches usb_1/usb_2 to
OTG mode so role switching can take effect.

Signed-off-by: Akash Kumar <akash.kumar@xxxxxxxxxxxxxxxx>

---
Akash Kumar (3):
dt-bindings: usb: Add Cypress cypd6129/cypd6229 Type-C controller
usb: typec: ucsi: ccg: Add support for cypd6129/cypd6229
arm64: dts: qcom: shikra: Wire up usb-role-switch for USB Type-C ports

.../bindings/usb/cypress,cypd6129.yaml | 99 ++++++++++++++++
arch/arm64/boot/dts/qcom/shikra-cqm-evk.dts | 64 ++++++++++-
arch/arm64/boot/dts/qcom/shikra-cqs-evk.dts | 64 ++++++++++-
arch/arm64/boot/dts/qcom/shikra-iqs-evk.dts | 108 +++++++++++++++++-
drivers/usb/typec/ucsi/ucsi_ccg.c | 2 +
5 files changed, 324 insertions(+), 13 deletions(-)
create mode 100644 Documentation/devicetree/bindings/usb/cypress,cypd6129.yaml
---
base-commit: 96c901471bf7948b9b9f70d38ea11631a8c33b4c
change-id: 20260820-shikra-usb-role-switch-a3f910b2b2b1
lore link: https://lore.kernel.org/all/20260811-usb-shikra-v7-v7-0-753e928f37ae@xxxxxxxxxxxxxxxx/
---
2.43.0