# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/usb/nxp,ptn5110.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: NXP PTN5110 Typec Port Cotroller

maintainers:
  - Li Jun <jun.li@nxp.com>

properties:
  compatible:
    const: nxp,ptn5110

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  connector:
    type: object
    $ref: /schemas/connector/usb-connector.yaml#
    unevaluatedProperties: false

required:
  - compatible
  - reg
  - interrupts
  - connector

additionalProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    #include <dt-bindings/usb/pd.h>
    i2c {
        #address-cells = <1>;
        #size-cells = <0>;

        tcpci@50 {
            compatible = "nxp,ptn5110";
            reg = <0x50>;
            interrupt-parent = <&gpio3>;
            interrupts = <3 IRQ_TYPE_LEVEL_LOW>;

            usb_con: connector {
                compatible = "usb-c-connector";
                label = "USB-C";
                data-role = "dual";
                power-role = "dual";
                try-power-role = "sink";
                source-pdos = <PDO_FIXED(5000, 2000, PDO_FIXED_USB_COMM)>;
                sink-pdos = <PDO_FIXED(5000, 2000, PDO_FIXED_USB_COMM) PDO_VAR(5000, 12000, 2000)>;
                op-sink-microwatt = <10000000>;

                ports {
                    #address-cells = <1>;
                    #size-cells = <0>;

                    port@0 {
                       reg = <0>;
                       typec1_dr_sw: endpoint {
                           remote-endpoint = <&usb1_drd_sw>;
                       };
                    };
                };
            };
        };
    };
