Skip to content

Commit d73ddef

Browse files
abelvesagregkh
authored andcommitted
dt-bindings: usb: Add Parade PS8830 Type-C retimer bindings
The Parade PS8830 is a USB4, DisplayPort and Thunderbolt 4 retimer, controlled over I2C. It usually sits between a USB/DisplayPort PHY and the Type-C connector, and provides orientation and altmode handling. Currently, it is found on all boards featuring the Qualcomm Snapdragon X Elite SoCs. Document bindings for its new driver. Future-proof the schema for the PS8833 variant, which seems to be similar to PS8830. Signed-off-by: Abel Vesa <abel.vesa@linaro.org> Reviewed-by: Conor Dooley <conor.dooley@microchip.com> Link: https://lore.kernel.org/r/20250206-x1e80100-ps8830-v6-1-60b1e49cfa8d@linaro.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
1 parent 07959ad commit d73ddef

File tree

1 file changed

+140
-0
lines changed

1 file changed

+140
-0
lines changed
Lines changed: 140 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,140 @@
1+
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/usb/parade,ps8830.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Parade PS883x USB and DisplayPort Retimer
8+
9+
maintainers:
10+
- Abel Vesa <abel.vesa@linaro.org>
11+
12+
properties:
13+
compatible:
14+
enum:
15+
- parade,ps8830
16+
17+
reg:
18+
maxItems: 1
19+
20+
clocks:
21+
items:
22+
- description: XO Clock
23+
24+
reset-gpios:
25+
maxItems: 1
26+
27+
vdd-supply:
28+
description: power supply (1.07V)
29+
30+
vdd33-supply:
31+
description: power supply (3.3V)
32+
33+
vdd33-cap-supply:
34+
description: power supply (3.3V)
35+
36+
vddar-supply:
37+
description: power supply (1.07V)
38+
39+
vddat-supply:
40+
description: power supply (1.07V)
41+
42+
vddio-supply:
43+
description: power supply (1.2V or 1.8V)
44+
45+
orientation-switch: true
46+
retimer-switch: true
47+
48+
ports:
49+
$ref: /schemas/graph.yaml#/properties/ports
50+
properties:
51+
port@0:
52+
$ref: /schemas/graph.yaml#/properties/port
53+
description: Super Speed (SS) Output endpoint to the Type-C connector
54+
55+
port@1:
56+
$ref: /schemas/graph.yaml#/$defs/port-base
57+
description: Super Speed (SS) Input endpoint from the Super-Speed PHY
58+
unevaluatedProperties: false
59+
60+
port@2:
61+
$ref: /schemas/graph.yaml#/properties/port
62+
description:
63+
Sideband Use (SBU) AUX lines endpoint to the Type-C connector for the purpose of
64+
handling altmode muxing and orientation switching.
65+
66+
required:
67+
- compatible
68+
- reg
69+
- clocks
70+
- reset-gpios
71+
- vdd-supply
72+
- vdd33-supply
73+
- vdd33-cap-supply
74+
- vddat-supply
75+
- vddio-supply
76+
- orientation-switch
77+
- retimer-switch
78+
79+
allOf:
80+
- $ref: usb-switch.yaml#
81+
82+
additionalProperties: false
83+
84+
examples:
85+
- |
86+
#include <dt-bindings/gpio/gpio.h>
87+
88+
i2c {
89+
#address-cells = <1>;
90+
#size-cells = <0>;
91+
92+
typec-mux@8 {
93+
compatible = "parade,ps8830";
94+
reg = <0x8>;
95+
96+
clocks = <&clk_rtmr_xo>;
97+
98+
vdd-supply = <&vreg_rtmr_1p15>;
99+
vdd33-supply = <&vreg_rtmr_3p3>;
100+
vdd33-cap-supply = <&vreg_rtmr_3p3>;
101+
vddar-supply = <&vreg_rtmr_1p15>;
102+
vddat-supply = <&vreg_rtmr_1p15>;
103+
vddio-supply = <&vreg_rtmr_1p8>;
104+
105+
reset-gpios = <&tlmm 10 GPIO_ACTIVE_LOW>;
106+
107+
retimer-switch;
108+
orientation-switch;
109+
110+
ports {
111+
#address-cells = <1>;
112+
#size-cells = <0>;
113+
114+
port@0 {
115+
reg = <0>;
116+
117+
endpoint {
118+
remote-endpoint = <&typec_con_ss>;
119+
};
120+
};
121+
122+
port@1 {
123+
reg = <1>;
124+
125+
endpoint {
126+
remote-endpoint = <&usb_phy_ss>;
127+
};
128+
};
129+
130+
port@2 {
131+
reg = <2>;
132+
133+
endpoint {
134+
remote-endpoint = <&typec_dp_aux>;
135+
};
136+
};
137+
};
138+
};
139+
};
140+
...

0 commit comments

Comments
 (0)