Commit | Line | Data |
---|---|---|
553cedf6 RH |
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 | ||
7 | title: ARM Mali Midgard GPU | |
8 | ||
9 | maintainers: | |
10 | - Rob Herring <robh@kernel.org> | |
11 | ||
12 | properties: | |
13 | $nodename: | |
14 | pattern: '^gpu@[a-f0-9]+$' | |
15 | compatible: | |
16 | oneOf: | |
59b3d30f AF |
17 | - items: |
18 | - enum: | |
19 | - samsung,exynos5250-mali | |
20 | - const: arm,mali-t604 | |
3afd6389 MM |
21 | - items: |
22 | - enum: | |
23 | - samsung,exynos5420-mali | |
24 | - const: arm,mali-t628 | |
553cedf6 RH |
25 | - items: |
26 | - enum: | |
27 | - allwinner,sun50i-h6-mali | |
28 | - const: arm,mali-t720 | |
29 | - items: | |
30 | - enum: | |
31 | - amlogic,meson-gxm-mali | |
a17f07d6 | 32 | - realtek,rtd1295-mali |
553cedf6 | 33 | - const: arm,mali-t820 |
577dd5de RM |
34 | - items: |
35 | - enum: | |
36 | - arm,juno-mali | |
37 | - const: arm,mali-t624 | |
553cedf6 RH |
38 | - items: |
39 | - enum: | |
40 | - rockchip,rk3288-mali | |
59b3d30f | 41 | - samsung,exynos5433-mali |
553cedf6 RH |
42 | - const: arm,mali-t760 |
43 | - items: | |
44 | - enum: | |
45 | - rockchip,rk3399-mali | |
46 | - const: arm,mali-t860 | |
553cedf6 | 47 | |
553cedf6 RH |
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 | ||
f3dde260 | 76 | mali-supply: true |
553cedf6 RH |
77 | |
78 | resets: | |
79 | minItems: 1 | |
80 | maxItems: 2 | |
81 | ||
82 | operating-points-v2: true | |
83 | ||
84 | "#cooling-cells": | |
85 | const: 2 | |
86 | ||
87 | required: | |
88 | - compatible | |
89 | - reg | |
90 | - interrupts | |
91 | - interrupt-names | |
92 | - clocks | |
93 | ||
94 | allOf: | |
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 | ||
119 | examples: | |
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 | ||
51a21e0e | 141 | opp-533000000 { |
553cedf6 RH |
142 | opp-hz = /bits/ 64 <533000000>; |
143 | opp-microvolt = <1250000>; | |
144 | }; | |
51a21e0e | 145 | opp-450000000 { |
553cedf6 RH |
146 | opp-hz = /bits/ 64 <450000000>; |
147 | opp-microvolt = <1150000>; | |
148 | }; | |
51a21e0e | 149 | opp-400000000 { |
553cedf6 RH |
150 | opp-hz = /bits/ 64 <400000000>; |
151 | opp-microvolt = <1125000>; | |
152 | }; | |
51a21e0e | 153 | opp-350000000 { |
553cedf6 RH |
154 | opp-hz = /bits/ 64 <350000000>; |
155 | opp-microvolt = <1075000>; | |
156 | }; | |
51a21e0e | 157 | opp-266000000 { |
553cedf6 RH |
158 | opp-hz = /bits/ 64 <266000000>; |
159 | opp-microvolt = <1025000>; | |
160 | }; | |
51a21e0e | 161 | opp-160000000 { |
553cedf6 RH |
162 | opp-hz = /bits/ 64 <160000000>; |
163 | opp-microvolt = <925000>; | |
164 | }; | |
51a21e0e | 165 | opp-100000000 { |
553cedf6 RH |
166 | opp-hz = /bits/ 64 <100000000>; |
167 | opp-microvolt = <912500>; | |
168 | }; | |
169 | }; | |
170 | ||
171 | ... |