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-only
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/gpu/arm,mali-midgard.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: ARM Mali Midgard GPU
8
9maintainers:
10 - Rob Herring <robh@kernel.org>
11
12properties:
13 $nodename:
14 pattern: '^gpu@[a-f0-9]+$'
15 compatible:
16 oneOf:
17 - items:
18 - enum:
19 - samsung,exynos5250-mali
20 - const: arm,mali-t604
21 - items:
22 - enum:
23 - samsung,exynos5420-mali
24 - const: arm,mali-t628
25 - items:
26 - enum:
27 - allwinner,sun50i-h6-mali
28 - const: arm,mali-t720
29 - items:
30 - enum:
31 - amlogic,meson-gxm-mali
32 - realtek,rtd1295-mali
33 - const: arm,mali-t820
34 - items:
35 - enum:
36 - arm,juno-mali
37 - const: arm,mali-t624
38 - items:
39 - enum:
40 - rockchip,rk3288-mali
41 - samsung,exynos5433-mali
42 - const: arm,mali-t760
43 - items:
44 - enum:
45 - rockchip,rk3399-mali
46 - const: arm,mali-t860
47
48 # "arm,mali-t830"
49 # "arm,mali-t880"
50
51 reg:
52 maxItems: 1
53
54 interrupts:
55 items:
56 - description: Job interrupt
57 - description: MMU interrupt
58 - description: GPU interrupt
59
60 interrupt-names:
61 items:
62 - const: job
63 - const: mmu
64 - const: gpu
65
66 clocks:
67 minItems: 1
68 maxItems: 2
69
70 clock-names:
71 minItems: 1
72 items:
73 - const: core
74 - const: bus
75
76 mali-supply: true
77
78 resets:
79 minItems: 1
80 maxItems: 2
81
82 operating-points-v2: true
83
84 "#cooling-cells":
85 const: 2
86
87required:
88 - compatible
89 - reg
90 - interrupts
91 - interrupt-names
92 - clocks
93
94allOf:
95 - if:
96 properties:
97 compatible:
98 contains:
99 const: allwinner,sun50i-h6-mali
100 then:
101 properties:
102 clocks:
103 minItems: 2
104 required:
105 - clock-names
106 - resets
107 - if:
108 properties:
109 compatible:
110 contains:
111 const: amlogic,meson-gxm-mali
112 then:
113 properties:
114 resets:
115 minItems: 2
116 required:
117 - resets
118
119examples:
120 - |
121 #include <dt-bindings/interrupt-controller/irq.h>
122 #include <dt-bindings/interrupt-controller/arm-gic.h>
123
124 gpu@ffa30000 {
125 compatible = "rockchip,rk3288-mali", "arm,mali-t760";
126 reg = <0xffa30000 0x10000>;
127 interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
128 <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>,
129 <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
130 interrupt-names = "job", "mmu", "gpu";
131 clocks = <&cru 0>;
132 mali-supply = <&vdd_gpu>;
133 operating-points-v2 = <&gpu_opp_table>;
134 power-domains = <&power 0>;
135 #cooling-cells = <2>;
136 };
137
138 gpu_opp_table: opp_table0 {
139 compatible = "operating-points-v2";
140
141 opp@533000000 {
142 opp-hz = /bits/ 64 <533000000>;
143 opp-microvolt = <1250000>;
144 };
145 opp@450000000 {
146 opp-hz = /bits/ 64 <450000000>;
147 opp-microvolt = <1150000>;
148 };
149 opp@400000000 {
150 opp-hz = /bits/ 64 <400000000>;
151 opp-microvolt = <1125000>;
152 };
153 opp@350000000 {
154 opp-hz = /bits/ 64 <350000000>;
155 opp-microvolt = <1075000>;
156 };
157 opp@266000000 {
158 opp-hz = /bits/ 64 <266000000>;
159 opp-microvolt = <1025000>;
160 };
161 opp@160000000 {
162 opp-hz = /bits/ 64 <160000000>;
163 opp-microvolt = <925000>;
164 };
165 opp@100000000 {
166 opp-hz = /bits/ 64 <100000000>;
167 opp-microvolt = <912500>;
168 };
169 };
170
171...