Skip to content

Commit 2ed2732

Browse files
Johan Jonkermmind
authored andcommitted
dt-bindings: soc: rockchip: convert grf.txt to YAML
Current dts files with 'grf' nodes are manually verified. In order to automate this process grf.txt has to be converted to YAML. Most compatibility strings are in use with "simple-mfd" added. Changed compatibles: "rockchip,rk3066-grf", "syscon", "simple-mfd" "rockchip,rk3188-grf", "syscon", "simple-mfd" Add description already in use: "rockchip,rv1108-pmugrf", "syscon" Add new descriptions for: "rockchip,rk3568-grf", "syscon", "simple-mfd" "rockchip,rk3568-pmugrf", "syscon", "simple-mfd" Signed-off-by: Johan Jonker <jbx6244@gmail.com> Reviewed-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20210512122346.9463-3-jbx6244@gmail.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
1 parent 1782c87 commit 2ed2732

2 files changed

Lines changed: 260 additions & 61 deletions

File tree

Documentation/devicetree/bindings/soc/rockchip/grf.txt

Lines changed: 0 additions & 61 deletions
This file was deleted.
Lines changed: 260 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,260 @@
1+
# SPDX-License-Identifier: GPL-2.0
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/soc/rockchip/grf.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Rockchip General Register Files (GRF)
8+
9+
maintainers:
10+
- Heiko Stuebner <heiko@sntech.de>
11+
12+
properties:
13+
compatible:
14+
oneOf:
15+
- items:
16+
- enum:
17+
- rockchip,rk3288-sgrf
18+
- rockchip,rv1108-pmugrf
19+
- rockchip,rv1108-usbgrf
20+
- const: syscon
21+
- items:
22+
- enum:
23+
- rockchip,px30-grf
24+
- rockchip,px30-pmugrf
25+
- rockchip,px30-usb2phy-grf
26+
- rockchip,rk3036-grf
27+
- rockchip,rk3066-grf
28+
- rockchip,rk3188-grf
29+
- rockchip,rk3228-grf
30+
- rockchip,rk3288-grf
31+
- rockchip,rk3308-core-grf
32+
- rockchip,rk3308-detect-grf
33+
- rockchip,rk3308-grf
34+
- rockchip,rk3328-grf
35+
- rockchip,rk3328-usb2phy-grf
36+
- rockchip,rk3368-grf
37+
- rockchip,rk3368-pmugrf
38+
- rockchip,rk3399-grf
39+
- rockchip,rk3399-pmugrf
40+
- rockchip,rk3568-grf
41+
- rockchip,rk3568-pmugrf
42+
- rockchip,rv1108-grf
43+
- const: syscon
44+
- const: simple-mfd
45+
46+
reg:
47+
maxItems: 1
48+
49+
"#address-cells":
50+
const: 1
51+
52+
"#size-cells":
53+
const: 1
54+
55+
required:
56+
- compatible
57+
- reg
58+
59+
additionalProperties:
60+
type: object
61+
62+
allOf:
63+
- if:
64+
properties:
65+
compatible:
66+
contains:
67+
const: rockchip,px30-grf
68+
69+
then:
70+
properties:
71+
lvds:
72+
description:
73+
Documentation/devicetree/bindings/display/rockchip/rockchip-lvds.txt
74+
75+
- if:
76+
properties:
77+
compatible:
78+
contains:
79+
const: rockchip,rk3288-grf
80+
81+
then:
82+
properties:
83+
edp-phy:
84+
description:
85+
Documentation/devicetree/bindings/phy/rockchip-dp-phy.txt
86+
87+
- if:
88+
properties:
89+
compatible:
90+
contains:
91+
enum:
92+
- rockchip,rk3066-grf
93+
- rockchip,rk3188-grf
94+
- rockchip,rk3288-grf
95+
96+
then:
97+
properties:
98+
usbphy:
99+
type: object
100+
101+
$ref: "/schemas/phy/rockchip-usb-phy.yaml#"
102+
103+
unevaluatedProperties: false
104+
105+
- if:
106+
properties:
107+
compatible:
108+
contains:
109+
const: rockchip,rk3328-grf
110+
111+
then:
112+
properties:
113+
gpio:
114+
type: object
115+
116+
$ref: "/schemas/gpio/rockchip,rk3328-grf-gpio.yaml#"
117+
118+
unevaluatedProperties: false
119+
120+
power-controller:
121+
type: object
122+
123+
$ref: "/schemas/power/rockchip,power-controller.yaml#"
124+
125+
unevaluatedProperties: false
126+
127+
- if:
128+
properties:
129+
compatible:
130+
contains:
131+
const: rockchip,rk3399-grf
132+
133+
then:
134+
properties:
135+
mipi-dphy-rx0:
136+
type: object
137+
138+
$ref: "/schemas/phy/rockchip-mipi-dphy-rx0.yaml#"
139+
140+
unevaluatedProperties: false
141+
142+
pcie-phy:
143+
description:
144+
Documentation/devicetree/bindings/phy/rockchip-pcie-phy.txt
145+
146+
patternProperties:
147+
"phy@[0-9a-f]+$":
148+
description:
149+
Documentation/devicetree/bindings/phy/rockchip-emmc-phy.txt
150+
151+
- if:
152+
properties:
153+
compatible:
154+
contains:
155+
enum:
156+
- rockchip,px30-pmugrf
157+
- rockchip,rk3036-grf
158+
- rockchip,rk3308-grf
159+
- rockchip,rk3368-pmugrf
160+
161+
then:
162+
properties:
163+
reboot-mode:
164+
type: object
165+
166+
$ref: "/schemas/power/reset/syscon-reboot-mode.yaml#"
167+
168+
unevaluatedProperties: false
169+
170+
- if:
171+
properties:
172+
compatible:
173+
contains:
174+
enum:
175+
- rockchip,px30-usb2phy-grf
176+
- rockchip,rk3228-grf
177+
- rockchip,rk3328-usb2phy-grf
178+
- rockchip,rk3399-grf
179+
- rockchip,rv1108-grf
180+
181+
then:
182+
required:
183+
- "#address-cells"
184+
- "#size-cells"
185+
186+
patternProperties:
187+
"usb2-phy@[0-9a-f]+$":
188+
type: object
189+
190+
$ref: "/schemas/phy/phy-rockchip-inno-usb2.yaml#"
191+
192+
unevaluatedProperties: false
193+
194+
- if:
195+
properties:
196+
compatible:
197+
contains:
198+
enum:
199+
- rockchip,px30-pmugrf
200+
- rockchip,px30-grf
201+
- rockchip,rk3228-grf
202+
- rockchip,rk3288-grf
203+
- rockchip,rk3328-grf
204+
- rockchip,rk3368-pmugrf
205+
- rockchip,rk3368-grf
206+
- rockchip,rk3399-pmugrf
207+
- rockchip,rk3399-grf
208+
209+
then:
210+
properties:
211+
io-domains:
212+
description:
213+
Documentation/devicetree/bindings/power/rockchip-io-domain.txt
214+
215+
examples:
216+
- |
217+
#include <dt-bindings/clock/rk3399-cru.h>
218+
#include <dt-bindings/interrupt-controller/arm-gic.h>
219+
#include <dt-bindings/power/rk3399-power.h>
220+
grf: syscon@ff770000 {
221+
compatible = "rockchip,rk3399-grf", "syscon", "simple-mfd";
222+
reg = <0xff770000 0x10000>;
223+
#address-cells = <1>;
224+
#size-cells = <1>;
225+
226+
mipi_dphy_rx0: mipi-dphy-rx0 {
227+
compatible = "rockchip,rk3399-mipi-dphy-rx0";
228+
clocks = <&cru SCLK_MIPIDPHY_REF>,
229+
<&cru SCLK_DPHY_RX0_CFG>,
230+
<&cru PCLK_VIO_GRF>;
231+
clock-names = "dphy-ref", "dphy-cfg", "grf";
232+
power-domains = <&power RK3399_PD_VIO>;
233+
#phy-cells = <0>;
234+
};
235+
236+
u2phy0: usb2-phy@e450 {
237+
compatible = "rockchip,rk3399-usb2phy";
238+
reg = <0xe450 0x10>;
239+
clocks = <&cru SCLK_USB2PHY0_REF>;
240+
clock-names = "phyclk";
241+
#clock-cells = <0>;
242+
clock-output-names = "clk_usbphy0_480m";
243+
#phy-cells = <0>;
244+
245+
u2phy0_host: host-port {
246+
#phy-cells = <0>;
247+
interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH 0>;
248+
interrupt-names = "linestate";
249+
};
250+
251+
u2phy0_otg: otg-port {
252+
#phy-cells = <0>;
253+
interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH 0>,
254+
<GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH 0>,
255+
<GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH 0>;
256+
interrupt-names = "otg-bvalid", "otg-id",
257+
"linestate";
258+
};
259+
};
260+
};

0 commit comments

Comments
 (0)