Skip to content

Commit a75d805

Browse files
srevinodkoul
authored andcommitted
dt-bindings: phy: add rockchip usbdp combo phy document
Add device tree binding document for Rockchip USBDP Combo PHY with Samsung IP block. Co-developed-by: Frank Wang <frank.wang@rock-chips.com> Signed-off-by: Frank Wang <frank.wang@rock-chips.com> Reviewed-by: Conor Dooley <conor.dooley@microchip.com> Reviewed-by: Heiko Stuebner <heiko@sntech.de> Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com> Link: https://lore.kernel.org/r/20240408225109.128953-2-sebastian.reichel@collabora.com Signed-off-by: Vinod Koul <vkoul@kernel.org>
1 parent ac4aa9d commit a75d805

File tree

1 file changed

+148
-0
lines changed

1 file changed

+148
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,148 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/phy/phy-rockchip-usbdp.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Rockchip USBDP Combo PHY with Samsung IP block
8+
9+
maintainers:
10+
- Frank Wang <frank.wang@rock-chips.com>
11+
- Zhang Yubing <yubing.zhang@rock-chips.com>
12+
13+
properties:
14+
compatible:
15+
enum:
16+
- rockchip,rk3588-usbdp-phy
17+
18+
reg:
19+
maxItems: 1
20+
21+
"#phy-cells":
22+
description: |
23+
Cell allows setting the type of the PHY. Possible values are:
24+
- PHY_TYPE_USB3
25+
- PHY_TYPE_DP
26+
const: 1
27+
28+
clocks:
29+
maxItems: 4
30+
31+
clock-names:
32+
items:
33+
- const: refclk
34+
- const: immortal
35+
- const: pclk
36+
- const: utmi
37+
38+
resets:
39+
maxItems: 5
40+
41+
reset-names:
42+
items:
43+
- const: init
44+
- const: cmn
45+
- const: lane
46+
- const: pcs_apb
47+
- const: pma_apb
48+
49+
rockchip,dp-lane-mux:
50+
$ref: /schemas/types.yaml#/definitions/uint32-array
51+
minItems: 2
52+
maxItems: 4
53+
items:
54+
maximum: 3
55+
description:
56+
An array of physical Type-C lanes indexes. Position of an entry
57+
determines the DisplayPort (DP) lane index, while the value of an entry
58+
indicates physical Type-C lane. The supported DP lanes number are 2 or 4.
59+
e.g. for 2 lanes DP lanes map, we could have "rockchip,dp-lane-mux = <2,
60+
3>;", assuming DP lane0 on Type-C phy lane2, DP lane1 on Type-C phy
61+
lane3. For 4 lanes DP lanes map, we could have "rockchip,dp-lane-mux =
62+
<0, 1, 2, 3>;", assuming DP lane0 on Type-C phy lane0, DP lane1 on Type-C
63+
phy lane1, DP lane2 on Type-C phy lane2, DP lane3 on Type-C phy lane3. If
64+
DP lanes are mapped by DisplayPort Alt mode, this property is not needed.
65+
66+
rockchip,u2phy-grf:
67+
$ref: /schemas/types.yaml#/definitions/phandle
68+
description:
69+
Phandle to the syscon managing the 'usb2 phy general register files'.
70+
71+
rockchip,usb-grf:
72+
$ref: /schemas/types.yaml#/definitions/phandle
73+
description:
74+
Phandle to the syscon managing the 'usb general register files'.
75+
76+
rockchip,usbdpphy-grf:
77+
$ref: /schemas/types.yaml#/definitions/phandle
78+
description:
79+
Phandle to the syscon managing the 'usbdp phy general register files'.
80+
81+
rockchip,vo-grf:
82+
$ref: /schemas/types.yaml#/definitions/phandle
83+
description:
84+
Phandle to the syscon managing the 'video output general register files'.
85+
When select the DP lane mapping will request its phandle.
86+
87+
sbu1-dc-gpios:
88+
description:
89+
GPIO connected to the SBU1 line of the USB-C connector via a big resistor
90+
(~100K) to apply a DC offset for signalling the connector orientation.
91+
maxItems: 1
92+
93+
sbu2-dc-gpios:
94+
description:
95+
GPIO connected to the SBU2 line of the USB-C connector via a big resistor
96+
(~100K) to apply a DC offset for signalling the connector orientation.
97+
maxItems: 1
98+
99+
orientation-switch:
100+
description: Flag the port as possible handler of orientation switching
101+
type: boolean
102+
103+
mode-switch:
104+
description: Flag the port as possible handler of altmode switching
105+
type: boolean
106+
107+
port:
108+
$ref: /schemas/graph.yaml#/properties/port
109+
description:
110+
A port node to link the PHY to a TypeC controller for the purpose of
111+
handling orientation switching.
112+
113+
required:
114+
- compatible
115+
- reg
116+
- clocks
117+
- clock-names
118+
- resets
119+
- reset-names
120+
- "#phy-cells"
121+
122+
additionalProperties: false
123+
124+
examples:
125+
- |
126+
#include <dt-bindings/clock/rockchip,rk3588-cru.h>
127+
#include <dt-bindings/reset/rockchip,rk3588-cru.h>
128+
129+
usbdp_phy0: phy@fed80000 {
130+
compatible = "rockchip,rk3588-usbdp-phy";
131+
reg = <0xfed80000 0x10000>;
132+
#phy-cells = <1>;
133+
clocks = <&cru CLK_USBDPPHY_MIPIDCPPHY_REF>,
134+
<&cru CLK_USBDP_PHY0_IMMORTAL>,
135+
<&cru PCLK_USBDPPHY0>,
136+
<&u2phy0>;
137+
clock-names = "refclk", "immortal", "pclk", "utmi";
138+
resets = <&cru SRST_USBDP_COMBO_PHY0_INIT>,
139+
<&cru SRST_USBDP_COMBO_PHY0_CMN>,
140+
<&cru SRST_USBDP_COMBO_PHY0_LANE>,
141+
<&cru SRST_USBDP_COMBO_PHY0_PCS>,
142+
<&cru SRST_P_USBDPPHY0>;
143+
reset-names = "init", "cmn", "lane", "pcs_apb", "pma_apb";
144+
rockchip,u2phy-grf = <&usb2phy0_grf>;
145+
rockchip,usb-grf = <&usb_grf>;
146+
rockchip,usbdpphy-grf = <&usbdpphy0_grf>;
147+
rockchip,vo-grf = <&vo0_grf>;
148+
};

0 commit comments

Comments
 (0)