Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
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 required:
47 - reg
48
49required:
50 - compatible
51 - reg
52 - interrupts
53
54anyOf:
55 - required:
56 - connector@0
57 - required:
58 - connector@1
59
60additionalProperties: false
61
62examples:
63 - |
64 #include <dt-bindings/interrupt-controller/arm-gic.h>
65 i2c {
66 #address-cells = <1>;
67 #size-cells = <0>;
68
69 typec@8 {
70 compatible = "cypress,cypd4226";
71 reg = <0x08>;
72 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
73 firmware-name = "nvidia,jetson-agx-xavier";
74 #address-cells = <1>;
75 #size-cells = <0>;
76 connector@0 {
77 compatible = "usb-c-connector";
78 reg = <0>;
79 label = "USB-C";
80 data-role = "dual";
81 ports {
82 #address-cells = <1>;
83 #size-cells = <0>;
84 port@0 {
85 reg = <0>;
86 endpoint {
87 remote-endpoint = <&usb_role_switch0>;
88 };
89 };
90 };
91 };
92 };
93 };