1 # SPDX-License-Identifier: GPL-2.0-only
2 # Copyright 2019-2020, The Linux Foundation, All Rights Reserved
6 $id: "http://devicetree.org/schemas/display/msm/gmu.yaml#"
7 $schema: "http://devicetree.org/meta-schemas/core.yaml#"
9 title: Devicetree bindings for the GMU attached to certain Adreno GPUs
12 - Rob Clark <robdclark@gmail.com>
15 These bindings describe the Graphics Management Unit (GMU) that is attached
16 to members of the Adreno A6xx GPU family. The GMU provides on-device power
17 management and support to improve power efficiency and reduce the load on
23 - pattern: '^qcom,adreno-gmu-6[0-9][0-9]\.[0-9]$'
24 - const: qcom,adreno-gmu
44 - description: GMU HFI interrupt
45 - description: GMU interrupt
55 - description: CX power domain
56 - description: GX power domain
66 operating-points-v2: true
84 additionalProperties: false
92 - qcom,adreno-gmu-618.0
93 - qcom,adreno-gmu-630.2
98 - description: Core GMU registers
99 - description: GMU PDC registers
100 - description: GMU PDC sequence registers
108 - description: GMU clock
109 - description: GPU CX clock
110 - description: GPU AXI clock
111 - description: GPU MEMNOC clock
124 - qcom,adreno-gmu-635.0
129 - description: Core GMU registers
130 - description: Resource controller registers
131 - description: GMU PDC registers
139 - description: GMU clock
140 - description: GPU CX clock
141 - description: GPU AXI clock
142 - description: GPU MEMNOC clock
143 - description: GPU AHB clock
144 - description: GPU HUB CX clock
145 - description: GPU SMMU vote clock
161 - qcom,adreno-gmu-640.1
166 - description: Core GMU registers
167 - description: GMU PDC registers
168 - description: GMU PDC sequence registers
180 - qcom,adreno-gmu-650.2
185 - description: Core GMU registers
186 - description: Resource controller registers
187 - description: GMU PDC registers
188 - description: GMU PDC sequence registers
201 - qcom,adreno-gmu-640.1
202 - qcom,adreno-gmu-650.2
207 - description: GPU AHB clock
208 - description: GMU clock
209 - description: GPU CX clock
210 - description: GPU AXI clock
211 - description: GPU MEMNOC clock
222 #include <dt-bindings/clock/qcom,gpucc-sdm845.h>
223 #include <dt-bindings/clock/qcom,gcc-sdm845.h>
224 #include <dt-bindings/interrupt-controller/irq.h>
225 #include <dt-bindings/interrupt-controller/arm-gic.h>
228 compatible="qcom,adreno-gmu-630.2", "qcom,adreno-gmu";
230 reg = <0x506a000 0x30000>,
233 reg-names = "gmu", "gmu_pdc", "gmu_pdc_seq";
235 clocks = <&gpucc GPU_CC_CX_GMU_CLK>,
236 <&gpucc GPU_CC_CXO_CLK>,
237 <&gcc GCC_DDRSS_GPU_AXI_CLK>,
238 <&gcc GCC_GPU_MEMNOC_GFX_CLK>;
239 clock-names = "gmu", "cxo", "axi", "memnoc";
241 interrupts = <GIC_SPI 304 IRQ_TYPE_LEVEL_HIGH>,
242 <GIC_SPI 305 IRQ_TYPE_LEVEL_HIGH>;
243 interrupt-names = "hfi", "gmu";
245 power-domains = <&gpucc GPU_CX_GDSC>,
246 <&gpucc GPU_GX_GDSC>;
247 power-domain-names = "cx", "gx";
249 iommus = <&adreno_smmu 5>;
250 operating-points-v2 = <&gmu_opp_table>;