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: 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 - samsung,exynos7-mali 46 - const: samsung,exynos5433-mali 47 - const: arm,mali-t760 48 - items: 49 - enum: 50 - rockchip,rk3399-mali 51 - const: arm,mali-t860 52 53 # "arm,mali-t830" 54 # "arm,mali-t880" 55 56 reg: 57 maxItems: 1 58 59 interrupts: 60 items: 61 - description: Job interrupt 62 - description: MMU interrupt 63 - description: GPU interrupt 64 65 interrupt-names: 66 items: 67 - const: job 68 - const: mmu 69 - const: gpu 70 71 clocks: 72 minItems: 1 73 maxItems: 2 74 75 clock-names: 76 minItems: 1 77 items: 78 - const: core 79 - const: bus 80 81 mali-supply: true 82 opp-table: 83 type: object 84 85 power-domains: 86 maxItems: 1 87 88 resets: 89 minItems: 1 90 maxItems: 2 91 92 operating-points-v2: true 93 94 "#cooling-cells": 95 const: 2 96 97 dma-coherent: true 98 99 dynamic-power-coefficient: 100 $ref: /schemas/types.yaml#/definitions/uint32 101 description: 102 A u32 value that represents the running time dynamic 103 power coefficient in units of uW/MHz/V^2. The 104 coefficient can either be calculated from power 105 measurements or derived by analysis. 106 107 The dynamic power consumption of the GPU is 108 proportional to the square of the Voltage (V) and 109 the clock frequency (f). The coefficient is used to 110 calculate the dynamic power as below - 111 112 Pdyn = dynamic-power-coefficient * V^2 * f 113 114 where voltage is in V, frequency is in MHz. 115 116 required: 117 - compatible 118 - reg 119 - interrupts 120 - interrupt-names 121 - clocks 122 123 additionalProperties: false 124 125 allOf: 126 - if: 127 properties: 128 compatible: 129 contains: 130 const: allwinner,sun50i-h6-mali 131 then: 132 properties: 133 clocks: 134 minItems: 2 135 required: 136 - clock-names 137 - resets 138 - if: 139 properties: 140 compatible: 141 contains: 142 const: amlogic,meson-gxm-mali 143 then: 144 properties: 145 resets: 146 minItems: 2 147 required: 148 - resets 149 150 examples: 151 - | 152 #include <dt-bindings/interrupt-controller/irq.h> 153 #include <dt-bindings/interrupt-controller/arm-gic.h> 154 155 gpu@ffa30000 { 156 compatible = "rockchip,rk3288-mali", "arm,mali-t760"; 157 reg = <0xffa30000 0x10000>; 158 interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>, 159 <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>, 160 <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>; 161 interrupt-names = "job", "mmu", "gpu"; 162 clocks = <&cru 0>; 163 mali-supply = <&vdd_gpu>; 164 operating-points-v2 = <&gpu_opp_table>; 165 power-domains = <&power 0>; 166 #cooling-cells = <2>; 167 }; 168 169 gpu_opp_table: opp-table { 170 compatible = "operating-points-v2"; 171 172 opp-533000000 { 173 opp-hz = /bits/ 64 <533000000>; 174 opp-microvolt = <1250000>; 175 }; 176 opp-450000000 { 177 opp-hz = /bits/ 64 <450000000>; 178 opp-microvolt = <1150000>; 179 }; 180 opp-400000000 { 181 opp-hz = /bits/ 64 <400000000>; 182 opp-microvolt = <1125000>; 183 }; 184 opp-350000000 { 185 opp-hz = /bits/ 64 <350000000>; 186 opp-microvolt = <1075000>; 187 }; 188 opp-266000000 { 189 opp-hz = /bits/ 64 <266000000>; 190 opp-microvolt = <1025000>; 191 }; 192 opp-160000000 { 193 opp-hz = /bits/ 64 <160000000>; 194 opp-microvolt = <925000>; 195 }; 196 opp-100000000 { 197 opp-hz = /bits/ 64 <100000000>; 198 opp-microvolt = <912500>; 199 }; 200 }; 201 202 ...
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.