1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/usb/cypress,cypd4226.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Cypress cypd4226 Type-C Controller 8 9maintainers: 10 - Wayne Chang <waynec@nvidia.com> 11 12description: 13 The Cypress cypd4226 is a dual Type-C controller that is controlled 14 via an I2C interface. 15 16properties: 17 compatible: 18 const: cypress,cypd4226 19 20 '#address-cells': 21 const: 1 22 23 '#size-cells': 24 const: 0 25 26 reg: 27 const: 0x08 28 29 interrupts: 30 items: 31 - description: cypd4226 host interrupt 32 33 firmware-name: 34 enum: 35 - nvidia,gpu 36 - nvidia,jetson-agx-xavier 37 description: | 38 The name of the CCGx firmware built for product series. 39 should be set one of following: 40 - "nvidia,gpu" for the NVIDIA RTX product series 41 - "nvidia,jetson-agx-xavier" for the NVIDIA Jetson product series 42 43patternProperties: 44 '^connector@[01]$': 45 $ref: /schemas/connector/usb-connector.yaml# 46 unevaluatedProperties: false 47 properties: 48 reg: 49 maxItems: 1 50 51required: 52 - compatible 53 - reg 54 - interrupts 55 56anyOf: 57 - required: 58 - connector@0 59 - required: 60 - connector@1 61 62additionalProperties: false 63 64examples: 65 - | 66 #include <dt-bindings/gpio/tegra194-gpio.h> 67 #include <dt-bindings/interrupt-controller/arm-gic.h> 68 i2c { 69 #address-cells = <1>; 70 #size-cells = <0>; 71 #interrupt-cells = <2>; 72 73 typec@8 { 74 compatible = "cypress,cypd4226"; 75 reg = <0x08>; 76 interrupt-parent = <&gpio_aon>; 77 interrupts = <TEGRA194_AON_GPIO(BB, 2) IRQ_TYPE_LEVEL_LOW>; 78 firmware-name = "nvidia,jetson-agx-xavier"; 79 #address-cells = <1>; 80 #size-cells = <0>; 81 connector@0 { 82 compatible = "usb-c-connector"; 83 reg = <0>; 84 label = "USB-C"; 85 data-role = "dual"; 86 ports { 87 #address-cells = <1>; 88 #size-cells = <0>; 89 port@0 { 90 reg = <0>; 91 endpoint { 92 remote-endpoint = <&usb_role_switch0>; 93 }; 94 }; 95 }; 96 }; 97 }; 98 }; 99