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
39additionalProperties: true
40
41examples:
42  - |
43    #include <dt-bindings/interrupt-controller/irq.h>
44    i2c {
45        #address-cells = <1>;
46        #size-cells = <0>;
47
48        tps6598x: tps6598x@38 {
49            compatible = "ti,tps6598x";
50            reg = <0x38>;
51            wakeup-source;
52
53            interrupt-parent = <&msmgpio>;
54            interrupts = <107 IRQ_TYPE_LEVEL_LOW>;
55            interrupt-names = "irq";
56
57            pinctrl-names = "default";
58            pinctrl-0 = <&typec_pins>;
59
60            typec_con: connector {
61                compatible = "usb-c-connector";
62                label = "USB-C";
63                port {
64                    typec_ep: endpoint {
65                        remote-endpoint = <&otg_ep>;
66                    };
67                };
68            };
69        };
70    };
71...
72