99 lines
2.1 KiB
YAML
99 lines
2.1 KiB
YAML
|
# 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>;
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
};
|