~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/usb/ti,tps6598x.yaml

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  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 
  7 title: Texas Instruments 6598x Type-C Port Switch and Power Delivery controller
  8 
  9 maintainers:
 10   - Bryan O'Donoghue <bryan.odonoghue@linaro.org>
 11 
 12 description: |
 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 
 18 properties:
 19   compatible:
 20     enum:
 21       - ti,tps6598x
 22       - apple,cd321x
 23       - ti,tps25750
 24 
 25   reg:
 26     minItems: 1
 27     items:
 28       - description: main PD controller address
 29       - description: |
 30           I2C slave address field in PBMs input data
 31           which is used as the device address when writing the
 32           patch for TPS25750.
 33           The patch address can be any value except 0x00, 0x20,
 34           0x21, 0x22, and 0x23
 35 
 36   reg-names:
 37     items:
 38       - const: main
 39       - const: patch-address
 40 
 41   reset-gpios:
 42     description: GPIO used for the HRESET pin.
 43     maxItems: 1
 44 
 45   wakeup-source: true
 46 
 47   interrupts:
 48     maxItems: 1
 49 
 50   interrupt-names:
 51     items:
 52       - const: irq
 53 
 54   connector:
 55     $ref: /schemas/connector/usb-connector.yaml#
 56 
 57   firmware-name:
 58     description: |
 59       Should contain the name of the default patch binary
 60       file located on the firmware search path which is
 61       used to switch the controller into APP mode.
 62       This is used when tps25750 doesn't have an EEPROM
 63       connected to it.
 64     maxItems: 1
 65 
 66 required:
 67   - compatible
 68   - reg
 69 
 70 allOf:
 71   - if:
 72       properties:
 73         compatible:
 74           contains:
 75             const: ti,tps25750
 76     then:
 77       properties:
 78         reg:
 79           maxItems: 2
 80 
 81         connector:
 82           required:
 83             - data-role
 84 
 85       required:
 86         - connector
 87         - reg-names
 88     else:
 89       properties:
 90         reg:
 91           maxItems: 1
 92 
 93 additionalProperties: false
 94 
 95 examples:
 96   - |
 97     #include <dt-bindings/gpio/gpio.h>
 98     #include <dt-bindings/interrupt-controller/irq.h>
 99     i2c {
100         #address-cells = <1>;
101         #size-cells = <0>;
102 
103         tps6598x: tps6598x@38 {
104             compatible = "ti,tps6598x";
105             reg = <0x38>;
106             wakeup-source;
107 
108             interrupt-parent = <&msmgpio>;
109             interrupts = <107 IRQ_TYPE_LEVEL_LOW>;
110             interrupt-names = "irq";
111 
112             pinctrl-names = "default";
113             pinctrl-0 = <&typec_pins>;
114             reset-gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>;
115 
116             typec_con: connector {
117                 compatible = "usb-c-connector";
118                 label = "USB-C";
119                 port {
120                     typec_ep: endpoint {
121                         remote-endpoint = <&otg_ep>;
122                     };
123                 };
124             };
125         };
126     };
127 
128   - |
129     #include <dt-bindings/interrupt-controller/irq.h>
130     i2c {
131         #address-cells = <1>;
132         #size-cells = <0>;
133 
134         typec@21 {
135             compatible = "ti,tps25750";
136             reg = <0x21>, <0x0f>;
137             reg-names = "main", "patch-address";
138 
139             interrupt-parent = <&msmgpio>;
140             interrupts = <100 IRQ_TYPE_LEVEL_LOW>;
141             interrupt-names = "irq";
142             firmware-name = "tps25750.bin";
143 
144             pinctrl-names = "default";
145             pinctrl-0 = <&typec_pins>;
146 
147             typec_con0: connector {
148                 compatible = "usb-c-connector";
149                 label = "USB-C";
150                 data-role = "dual";
151                 port {
152                     typec_ep0: endpoint {
153                         remote-endpoint = <&otg_ep>;
154                     };
155                 };
156             };
157         };
158     };
159 ...

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php