[PATCH 1/3] dt-bindings: usb: typec: Add Cypress CYPD6129 UCSI controller compatible
From: Akash Kumar
Date: Wed May 20 2026 - 05:46:40 EST
Document the "cypress,cypd6129" compatible string for the Cypress/Infineon
EZ-PD CCGx UCSI controller.
The CYPD6129 is compatible with the existing CCGx binding, so allow it as a
valid compatible and permit the existing "cypress,cypd4226" fallback where
appropriate.
Signed-off-by: Akash Kumar <akash.kumar@xxxxxxxxxxxxxxxx>
---
.../bindings/usb/cypress,cypd4226.yaml | 73 ++++++++++++++-----
1 file changed, 55 insertions(+), 18 deletions(-)
diff --git a/Documentation/devicetree/bindings/usb/cypress,cypd4226.yaml b/Documentation/devicetree/bindings/usb/cypress,cypd4226.yaml
index 0620d82508c1..90769c43ac95 100644
--- a/Documentation/devicetree/bindings/usb/cypress,cypd4226.yaml
+++ b/Documentation/devicetree/bindings/usb/cypress,cypd4226.yaml
@@ -15,7 +15,13 @@ description:
properties:
compatible:
- const: cypress,cypd4226
+ oneOf:
+ - enum:
+ - cypress,cypd6129
+ - cypress,cypd4226
+ - items:
+ - const: cypress,cypd6129
+ - const: cypress,cypd4226
'#address-cells':
const: 1
@@ -63,10 +69,42 @@ examples:
- |
#include <dt-bindings/interrupt-controller/arm-gic.h>
i2c {
- #address-cells = <1>;
- #size-cells = <0>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ #interrupt-cells = <2>;
+
+ typec@8 {
+ compatible = "cypress,cypd6129";
+ reg = <0x08>;
+ interrupt-parent = <&node>;
+ interrupts = <GPIO IRQ_TYPE_LEVEL_LOW>;
+ firmware-name = "ccg_primary.cyacd2";
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ connector@0 {
+ compatible = "usb-c-connector";
+ reg = <0>;
+ label = "USB-C";
+ data-role = "dual";
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
- typec@8 {
+ port@0 {
+ reg = <0>;
+ endpoint {
+ remote-endpoint = <&usb_role_switch0>;
+ };
+ };
+ };
+ };
+ };
+ };
+
+ - |
+ typec@8 {
compatible = "cypress,cypd4226";
reg = <0x08>;
interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
@@ -74,20 +112,19 @@ examples:
#address-cells = <1>;
#size-cells = <0>;
connector@0 {
- compatible = "usb-c-connector";
- reg = <0>;
- label = "USB-C";
- data-role = "dual";
- ports {
- #address-cells = <1>;
- #size-cells = <0>;
- port@0 {
- reg = <0>;
- endpoint {
- remote-endpoint = <&usb_role_switch0>;
- };
+ compatible = "usb-c-connector";
+ reg = <0>;
+ label = "USB-C";
+ data-role = "dual";
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ port@0 {
+ reg = <0>;
+ endpoint {
+ remote-endpoint = <&usb_role_switch0>;
+ };
+ };
};
- };
};
- };
};
--
2.43.0