# 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# required: - reg 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>; }; }; }; }; }; };