blob: 65a8632b4d9ed8f7f27b994df88adb903c051de6 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/usb/nxp,ptn5110.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
Tom Rini93743d22024-04-01 09:08:13 -04007title: NXP PTN5110 Type-C Port Controller
Tom Rini53633a82024-02-29 12:33:36 -05008
9maintainers:
10 - Li Jun <jun.li@nxp.com>
11
12properties:
13 compatible:
Tom Rini6bb92fc2024-05-20 09:54:58 -060014 items:
15 - const: nxp,ptn5110
16 - const: tcpci
Tom Rini53633a82024-02-29 12:33:36 -050017
18 reg:
19 maxItems: 1
20
21 interrupts:
22 maxItems: 1
23
24 connector:
25 type: object
26 $ref: /schemas/connector/usb-connector.yaml#
27 unevaluatedProperties: false
28
29required:
30 - compatible
31 - reg
32 - interrupts
33 - connector
34
35additionalProperties: false
36
37examples:
38 - |
39 #include <dt-bindings/interrupt-controller/arm-gic.h>
40 #include <dt-bindings/usb/pd.h>
41 i2c {
42 #address-cells = <1>;
43 #size-cells = <0>;
44
45 tcpci@50 {
Tom Rini6bb92fc2024-05-20 09:54:58 -060046 compatible = "nxp,ptn5110", "tcpci";
Tom Rini53633a82024-02-29 12:33:36 -050047 reg = <0x50>;
48 interrupt-parent = <&gpio3>;
49 interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
50
51 usb_con: connector {
52 compatible = "usb-c-connector";
53 label = "USB-C";
54 data-role = "dual";
55 power-role = "dual";
56 try-power-role = "sink";
57 source-pdos = <PDO_FIXED(5000, 2000, PDO_FIXED_USB_COMM)>;
58 sink-pdos = <PDO_FIXED(5000, 2000, PDO_FIXED_USB_COMM) PDO_VAR(5000, 12000, 2000)>;
59 op-sink-microwatt = <10000000>;
60
61 ports {
62 #address-cells = <1>;
63 #size-cells = <0>;
64
65 port@0 {
66 reg = <0>;
67 typec1_dr_sw: endpoint {
68 remote-endpoint = <&usb1_drd_sw>;
69 };
70 };
71 };
72 };
73 };
74 };