~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/soc/rockchip/grf.yaml

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  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,rk3566-pipe-grf
 19               - rockchip,rk3568-pcie3-phy-grf
 20               - rockchip,rk3568-pipe-grf
 21               - rockchip,rk3568-pipe-phy-grf
 22               - rockchip,rk3568-usb2phy-grf
 23               - rockchip,rk3576-bigcore-grf
 24               - rockchip,rk3576-cci-grf
 25               - rockchip,rk3576-gpu-grf
 26               - rockchip,rk3576-litcore-grf
 27               - rockchip,rk3576-npu-grf
 28               - rockchip,rk3576-php-grf
 29               - rockchip,rk3576-pipe-phy-grf
 30               - rockchip,rk3576-pmu1-grf
 31               - rockchip,rk3576-sdgmac-grf
 32               - rockchip,rk3576-sys-grf
 33               - rockchip,rk3576-usb-grf
 34               - rockchip,rk3576-usbdpphy-grf
 35               - rockchip,rk3576-vo0-grf
 36               - rockchip,rk3576-vop-grf
 37               - rockchip,rk3588-bigcore0-grf
 38               - rockchip,rk3588-bigcore1-grf
 39               - rockchip,rk3588-hdptxphy-grf
 40               - rockchip,rk3588-ioc
 41               - rockchip,rk3588-php-grf
 42               - rockchip,rk3588-pipe-phy-grf
 43               - rockchip,rk3588-sys-grf
 44               - rockchip,rk3588-pcie3-phy-grf
 45               - rockchip,rk3588-pcie3-pipe-grf
 46               - rockchip,rk3588-usb-grf
 47               - rockchip,rk3588-usbdpphy-grf
 48               - rockchip,rk3588-vo0-grf
 49               - rockchip,rk3588-vo1-grf
 50               - rockchip,rk3588-vop-grf
 51               - rockchip,rv1108-usbgrf
 52           - const: syscon
 53       - items:
 54           - const: rockchip,rk3588-vo-grf
 55           - const: syscon
 56         deprecated: true
 57         description: Use rockchip,rk3588-vo{0,1}-grf instead.
 58       - items:
 59           - enum:
 60               - rockchip,px30-grf
 61               - rockchip,px30-pmugrf
 62               - rockchip,px30-usb2phy-grf
 63               - rockchip,rk3036-grf
 64               - rockchip,rk3066-grf
 65               - rockchip,rk3128-grf
 66               - rockchip,rk3188-grf
 67               - rockchip,rk3228-grf
 68               - rockchip,rk3288-grf
 69               - rockchip,rk3308-core-grf
 70               - rockchip,rk3308-detect-grf
 71               - rockchip,rk3308-grf
 72               - rockchip,rk3308-usb2phy-grf
 73               - rockchip,rk3328-grf
 74               - rockchip,rk3328-usb2phy-grf
 75               - rockchip,rk3368-grf
 76               - rockchip,rk3368-pmugrf
 77               - rockchip,rk3399-grf
 78               - rockchip,rk3399-pmugrf
 79               - rockchip,rk3568-grf
 80               - rockchip,rk3568-pmugrf
 81               - rockchip,rk3576-ioc-grf
 82               - rockchip,rk3576-pmu0-grf
 83               - rockchip,rk3588-usb2phy-grf
 84               - rockchip,rv1108-grf
 85               - rockchip,rv1108-pmugrf
 86               - rockchip,rv1126-grf
 87               - rockchip,rv1126-pmugrf
 88           - const: syscon
 89           - const: simple-mfd
 90 
 91   reg:
 92     maxItems: 1
 93 
 94   clocks:
 95     maxItems: 1
 96 
 97   "#address-cells":
 98     const: 1
 99 
100   "#size-cells":
101     const: 1
102 
103 required:
104   - compatible
105   - reg
106 
107 additionalProperties:
108   type: object
109 
110 allOf:
111   - if:
112       properties:
113         compatible:
114           contains:
115             enum:
116               - rockchip,px30-grf
117 
118     then:
119       properties:
120         lvds:
121           type: object
122 
123           $ref: /schemas/display/rockchip/rockchip,lvds.yaml#
124 
125           unevaluatedProperties: false
126 
127   - if:
128       properties:
129         compatible:
130           contains:
131             const: rockchip,rk3288-grf
132 
133     then:
134       properties:
135         edp-phy:
136           type: object
137           $ref: /schemas/phy/rockchip,rk3288-dp-phy.yaml#
138           unevaluatedProperties: false
139 
140   - if:
141       properties:
142         compatible:
143           contains:
144             enum:
145               - rockchip,rk3066-grf
146               - rockchip,rk3188-grf
147               - rockchip,rk3288-grf
148 
149     then:
150       properties:
151         usbphy:
152           type: object
153 
154           $ref: /schemas/phy/rockchip-usb-phy.yaml#
155 
156           unevaluatedProperties: false
157 
158   - if:
159       properties:
160         compatible:
161           contains:
162             const: rockchip,rk3328-grf
163 
164     then:
165       properties:
166         gpio:
167           type: object
168 
169           $ref: /schemas/gpio/rockchip,rk3328-grf-gpio.yaml#
170 
171           unevaluatedProperties: false
172 
173         power-controller:
174           type: object
175 
176           $ref: /schemas/power/rockchip,power-controller.yaml#
177 
178           unevaluatedProperties: false
179 
180   - if:
181       properties:
182         compatible:
183           contains:
184             const: rockchip,rk3399-grf
185 
186     then:
187       properties:
188         mipi-dphy-rx0:
189           type: object
190 
191           $ref: /schemas/phy/rockchip-mipi-dphy-rx0.yaml#
192 
193           unevaluatedProperties: false
194 
195         pcie-phy:
196           type: object
197           description:
198             Documentation/devicetree/bindings/phy/rockchip-pcie-phy.txt
199 
200       patternProperties:
201         "^phy@[0-9a-f]+$":
202           type: object
203           $ref: /schemas/phy/rockchip,rk3399-emmc-phy.yaml#
204           unevaluatedProperties: false
205 
206   - if:
207       properties:
208         compatible:
209           contains:
210             enum:
211               - rockchip,px30-pmugrf
212               - rockchip,rk3036-grf
213               - rockchip,rk3308-grf
214               - rockchip,rk3368-pmugrf
215 
216     then:
217       properties:
218         reboot-mode:
219           type: object
220 
221           $ref: /schemas/power/reset/syscon-reboot-mode.yaml#
222 
223           unevaluatedProperties: false
224 
225   - if:
226       properties:
227         compatible:
228           contains:
229             enum:
230               - rockchip,px30-usb2phy-grf
231               - rockchip,rk3128-grf
232               - rockchip,rk3228-grf
233               - rockchip,rk3308-usb2phy-grf
234               - rockchip,rk3328-usb2phy-grf
235               - rockchip,rk3399-grf
236               - rockchip,rk3588-usb2phy-grf
237               - rockchip,rv1108-grf
238 
239     then:
240       required:
241         - "#address-cells"
242         - "#size-cells"
243 
244       patternProperties:
245         "usb2phy@[0-9a-f]+$":
246           type: object
247 
248           $ref: /schemas/phy/rockchip,inno-usb2phy.yaml#
249 
250           unevaluatedProperties: false
251 
252   - if:
253       properties:
254         compatible:
255           contains:
256             enum:
257               - rockchip,px30-grf
258               - rockchip,px30-pmugrf
259               - rockchip,rk3188-grf
260               - rockchip,rk3228-grf
261               - rockchip,rk3288-grf
262               - rockchip,rk3328-grf
263               - rockchip,rk3368-grf
264               - rockchip,rk3368-pmugrf
265               - rockchip,rk3399-grf
266               - rockchip,rk3399-pmugrf
267               - rockchip,rk3568-pmugrf
268               - rockchip,rk3588-pmugrf
269               - rockchip,rv1108-grf
270               - rockchip,rv1108-pmugrf
271 
272     then:
273       properties:
274         io-domains:
275           type: object
276 
277           $ref: /schemas/power/rockchip-io-domain.yaml#
278 
279           unevaluatedProperties: false
280 
281   - if:
282       properties:
283         compatible:
284           contains:
285             enum:
286               - rockchip,rk3588-vo-grf
287               - rockchip,rk3588-vo0-grf
288               - rockchip,rk3588-vo1-grf
289 
290     then:
291       required:
292         - clocks
293 
294     else:
295       properties:
296         clocks: false
297 
298 
299 examples:
300   - |
301     #include <dt-bindings/clock/rk3399-cru.h>
302     #include <dt-bindings/interrupt-controller/arm-gic.h>
303     #include <dt-bindings/power/rk3399-power.h>
304     grf: syscon@ff770000 {
305       compatible = "rockchip,rk3399-grf", "syscon", "simple-mfd";
306       reg = <0xff770000 0x10000>;
307       #address-cells = <1>;
308       #size-cells = <1>;
309 
310       mipi_dphy_rx0: mipi-dphy-rx0 {
311         compatible = "rockchip,rk3399-mipi-dphy-rx0";
312         clocks = <&cru SCLK_MIPIDPHY_REF>,
313                  <&cru SCLK_DPHY_RX0_CFG>,
314                  <&cru PCLK_VIO_GRF>;
315         clock-names = "dphy-ref", "dphy-cfg", "grf";
316         power-domains = <&power RK3399_PD_VIO>;
317         #phy-cells = <0>;
318       };
319 
320       phy@f780 {
321         compatible = "rockchip,rk3399-emmc-phy";
322         reg = <0xf780 0x20>;
323         clocks = <&sdhci>;
324         clock-names = "emmcclk";
325         drive-impedance-ohm = <50>;
326         #phy-cells = <0>;
327       };
328 
329       u2phy0: usb2phy@e450 {
330         compatible = "rockchip,rk3399-usb2phy";
331         reg = <0xe450 0x10>;
332         clocks = <&cru SCLK_USB2PHY0_REF>;
333         clock-names = "phyclk";
334         #clock-cells = <0>;
335         clock-output-names = "clk_usbphy0_480m";
336 
337         u2phy0_host: host-port {
338           #phy-cells = <0>;
339           interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH 0>;
340           interrupt-names = "linestate";
341          };
342 
343         u2phy0_otg: otg-port {
344           #phy-cells = <0>;
345           interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH 0>,
346                        <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH 0>,
347                        <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH 0>;
348           interrupt-names = "otg-bvalid", "otg-id",
349                             "linestate";
350         };
351       };
352     };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php