| # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) |
| %YAML 1.2 |
| --- |
| $id: http://devicetree.org/schemas/usb/cypress,cypd4226.yaml# |
| $schema: http://devicetree.org/meta-schemas/core.yaml# |
| |
| title: Cypress cypd4226 Type-C Controller |
| |
| maintainers: |
| - Wayne Chang <waynec@nvidia.com> |
| |
| description: |
| The Cypress cypd4226 is a dual Type-C controller that is controlled |
| via an I2C interface. |
| |
| properties: |
| compatible: |
| const: cypress,cypd4226 |
| |
| '#address-cells': |
| const: 1 |
| |
| '#size-cells': |
| const: 0 |
| |
| reg: |
| const: 0x08 |
| |
| interrupts: |
| items: |
| - description: cypd4226 host interrupt |
| |
| firmware-name: |
| enum: |
| - nvidia,gpu |
| - nvidia,jetson-agx-xavier |
| description: | |
| The name of the CCGx firmware built for product series. |
| should be set one of following: |
| - "nvidia,gpu" for the NVIDIA RTX product series |
| - "nvidia,jetson-agx-xavier" for the NVIDIA Jetson product series |
| |
| patternProperties: |
| '^connector@[01]$': |
| $ref: /schemas/connector/usb-connector.yaml# |
| unevaluatedProperties: false |
| properties: |
| reg: |
| maxItems: 1 |
| |
| required: |
| - compatible |
| - reg |
| - interrupts |
| |
| anyOf: |
| - required: |
| - connector@0 |
| - required: |
| - connector@1 |
| |
| additionalProperties: false |
| |
| examples: |
| - | |
| #include <dt-bindings/gpio/tegra194-gpio.h> |
| #include <dt-bindings/interrupt-controller/arm-gic.h> |
| i2c { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| #interrupt-cells = <2>; |
| |
| typec@8 { |
| compatible = "cypress,cypd4226"; |
| reg = <0x08>; |
| interrupt-parent = <&gpio_aon>; |
| interrupts = <TEGRA194_AON_GPIO(BB, 2) IRQ_TYPE_LEVEL_LOW>; |
| firmware-name = "nvidia,jetson-agx-xavier"; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| connector@0 { |
| compatible = "usb-c-connector"; |
| reg = <0>; |
| label = "USB-C"; |
| data-role = "dual"; |
| ports { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| port@0 { |
| reg = <0>; |
| endpoint { |
| remote-endpoint = <&usb_role_switch0>; |
| }; |
| }; |
| }; |
| }; |
| }; |
| }; |