1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: "http://devicetree.org/schemas/usb/ti,tps6598x.yaml#"
5$schema: "http://devicetree.org/meta-schemas/core.yaml#"
6
7title: Texas Instruments 6598x Type-C Port Switch and Power Delivery controller
8
9maintainers:
10  - Bryan O'Donoghue <bryan.odonoghue@linaro.org>
11
12description: |
13  Texas Instruments 6598x Type-C Port Switch and Power Delivery controller
14
15  A variant of this controller known as Apple CD321x or Apple ACE is also
16  present on hardware with Apple SoCs such as the M1.
17
18properties:
19  compatible:
20    enum:
21      - ti,tps6598x
22      - apple,cd321x
23  reg:
24    maxItems: 1
25
26  wakeup-source: true
27
28  interrupts:
29    maxItems: 1
30
31  interrupt-names:
32    items:
33      - const: irq
34
35required:
36  - compatible
37  - reg
38  - interrupts
39  - interrupt-names
40
41additionalProperties: true
42
43examples:
44  - |
45    #include <dt-bindings/interrupt-controller/irq.h>
46    i2c {
47        #address-cells = <1>;
48        #size-cells = <0>;
49
50        tps6598x: tps6598x@38 {
51            compatible = "ti,tps6598x";
52            reg = <0x38>;
53            wakeup-source;
54
55            interrupt-parent = <&msmgpio>;
56            interrupts = <107 IRQ_TYPE_LEVEL_LOW>;
57            interrupt-names = "irq";
58
59            pinctrl-names = "default";
60            pinctrl-0 = <&typec_pins>;
61
62            typec_con: connector {
63                compatible = "usb-c-connector";
64                label = "USB-C";
65                port {
66                    typec_ep: endpoint {
67                        remote-endpoint = <&otg_ep>;
68                    };
69                };
70            };
71        };
72    };
73...
74