diff mbox series

[3/4] dt-bindings: usb: Add Diodes Incorporated PI5USB30213A Type-C Controller

Message ID 20240917151001.1289399-4-michal.vokac@ysoft.com (mailing list archive)
State New
Headers show
Series Add support for new IMX8MP based board | expand

Commit Message

Michal Vokáč Sept. 17, 2024, 3:10 p.m. UTC
From: Petr Benes <petr.benes@ysoft.com>

Diodes Incorporated PI5USB30213A Type-C Controller supports host,
device, and dual-role mode based on voltage levels detected on CC
pin. Supports dual differential channel, 2:1 USB 3.0 Mux/Demux,
USB Type-C specification 1.1.

Signed-off-by: Petr Benes <petr.benes@ysoft.com>
Signed-off-by: Michal Vokáč <michal.vokac@ysoft.com>
---
 .../bindings/usb/diodes,pi5usb30213a.yaml     | 95 +++++++++++++++++++
 1 file changed, 95 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/usb/diodes,pi5usb30213a.yaml

Comments

Krzysztof Kozlowski Sept. 18, 2024, 1:16 p.m. UTC | #1
On 17/09/2024 17:10, Michal Vokáč wrote:
> From: Petr Benes <petr.benes@ysoft.com>
> 
> Diodes Incorporated PI5USB30213A Type-C Controller supports host,
> device, and dual-role mode based on voltage levels detected on CC
> pin. Supports dual differential channel, 2:1 USB 3.0 Mux/Demux,
> USB Type-C specification 1.1.
> 
> Signed-off-by: Petr Benes <petr.benes@ysoft.com>
> Signed-off-by: Michal Vokáč <michal.vokac@ysoft.com>
> ---
>  .../bindings/usb/diodes,pi5usb30213a.yaml     | 95 +++++++++++++++++++
>  1 file changed, 95 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/usb/diodes,pi5usb30213a.yaml
> 
> diff --git a/Documentation/devicetree/bindings/usb/diodes,pi5usb30213a.yaml b/Documentation/devicetree/bindings/usb/diodes,pi5usb30213a.yaml
> new file mode 100644
> index 000000000000..1cae10724152
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/usb/diodes,pi5usb30213a.yaml
> @@ -0,0 +1,95 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/usb/diodes,pi5usb30213a.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: PI5USB30213A Type-C port controller
> +
> +description:
> +  Diodes Incorporated PI5USB30213A Type-C Controller supports host,
> +  device, and dual-role mode based on voltage levels detected on CC
> +  pin. Dual differential channel, 2:1 USB 3.0 Mux/Demux, USB Type-C
> +  specification 1.1 compliant.
> +
> +maintainers:
> +  - Petr Benes <petr.benes@ysoft.com>

Please put maintainers before description: block.

> +
> +properties:
> +  compatible:
> +    enum:
> +      - diodes,pi5usb30213a
> +
> +  reg:
> +    maxItems: 1
> +
> +  interrupts:
> +    maxItems: 1
> +
> +  connector:
> +    type: object
> +    $ref: ../connector/usb-connector.yaml#

Full path, so /schemas/connector/usb-....

> +    unevaluatedProperties: false
> +    description:
> +      The managed USB Type-C connector.

Description should not be needed.
> +
> +    properties:
> +      compatible:
> +        const: usb-c-connector

Drop, not needed.

> +
> +required:
> +  - compatible
> +  - reg
> +  - interrupts
> +  - connector
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    #include <dt-bindings/interrupt-controller/irq.h>
> +
> +    i2c {
> +      #address-cells = <1>;
> +      #size-cells = <0>;
> +
> +      pi5usb30213a: tcpc@d {

typec@d

and drop label

> +        compatible = "diodes,pi5usb30213a";
> +        reg = <0xd>;
> +        pinctrl-names = "default";
> +        pinctrl-0 = <&pinctrl_typec>;
> +        interrupts-extended = <&gpio1 5 IRQ_TYPE_LEVEL_LOW>;
> +        status = "okay";

Drop status

Best regards,
Krzysztof
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/usb/diodes,pi5usb30213a.yaml b/Documentation/devicetree/bindings/usb/diodes,pi5usb30213a.yaml
new file mode 100644
index 000000000000..1cae10724152
--- /dev/null
+++ b/Documentation/devicetree/bindings/usb/diodes,pi5usb30213a.yaml
@@ -0,0 +1,95 @@ 
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/usb/diodes,pi5usb30213a.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: PI5USB30213A Type-C port controller
+
+description:
+  Diodes Incorporated PI5USB30213A Type-C Controller supports host,
+  device, and dual-role mode based on voltage levels detected on CC
+  pin. Dual differential channel, 2:1 USB 3.0 Mux/Demux, USB Type-C
+  specification 1.1 compliant.
+
+maintainers:
+  - Petr Benes <petr.benes@ysoft.com>
+
+properties:
+  compatible:
+    enum:
+      - diodes,pi5usb30213a
+
+  reg:
+    maxItems: 1
+
+  interrupts:
+    maxItems: 1
+
+  connector:
+    type: object
+    $ref: ../connector/usb-connector.yaml#
+    unevaluatedProperties: false
+    description:
+      The managed USB Type-C connector.
+
+    properties:
+      compatible:
+        const: usb-c-connector
+
+required:
+  - compatible
+  - reg
+  - interrupts
+  - connector
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/interrupt-controller/irq.h>
+
+    i2c {
+      #address-cells = <1>;
+      #size-cells = <0>;
+
+      pi5usb30213a: tcpc@d {
+        compatible = "diodes,pi5usb30213a";
+        reg = <0xd>;
+        pinctrl-names = "default";
+        pinctrl-0 = <&pinctrl_typec>;
+        interrupts-extended = <&gpio1 5 IRQ_TYPE_LEVEL_LOW>;
+        status = "okay";
+
+        connector {
+          compatible = "usb-c-connector";
+          label = "USB-C";
+          vbus-supply = <&reg_typec>;
+          power-role = "source";
+          data-role = "dual";
+          typec-power-opmode = "default";
+          pd-disable;
+
+          ports {
+            #address-cells = <1>;
+            #size-cells = <0>;
+
+            port@0 {
+              reg = <0>;
+
+              usb_con_hs: endpoint {
+                remote-endpoint = <&typec_hs>;
+              };
+            };
+
+            port@1 {
+              reg = <1>;
+
+              usb_con_ss: endpoint {
+                remote-endpoint = <&typec_ss>;
+              };
+            };
+          };
+        };
+      };
+    };