Skip to content

Commit 80dd5ca

Browse files
AngeloGioacchino Del Regnombgg
authored andcommitted
arm64: dts: mediatek: mt6795: Add SoC power domains
Add power domain tree for various hardware blocks on MT6795. Signed-off-by: AngeloGioacchino Del Regno <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Matthias Brugger <[email protected]>
1 parent 80d9c07 commit 80dd5ca

File tree

1 file changed

+79
-0
lines changed

1 file changed

+79
-0
lines changed

arch/arm64/boot/dts/mediatek/mt6795.dtsi

Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
#include <dt-bindings/interrupt-controller/arm-gic.h>
99
#include <dt-bindings/clock/mediatek,mt6795-clk.h>
1010
#include <dt-bindings/pinctrl/mt6795-pinfunc.h>
11+
#include <dt-bindings/power/mt6795-power.h>
1112
#include <dt-bindings/reset/mediatek,mt6795-resets.h>
1213

1314
/ {
@@ -264,6 +265,84 @@
264265
#reset-cells = <1>;
265266
};
266267

268+
scpsys: syscon@10006000 {
269+
compatible = "syscon", "simple-mfd";
270+
reg = <0 0x10006000 0 0x1000>;
271+
#power-domain-cells = <1>;
272+
273+
/* System Power Manager */
274+
spm: power-controller {
275+
compatible = "mediatek,mt6795-power-controller";
276+
#address-cells = <1>;
277+
#size-cells = <0>;
278+
#power-domain-cells = <1>;
279+
280+
/* power domains of the SoC */
281+
power-domain@MT6795_POWER_DOMAIN_VDEC {
282+
reg = <MT6795_POWER_DOMAIN_VDEC>;
283+
clocks = <&topckgen CLK_TOP_MM_SEL>;
284+
clock-names = "mm";
285+
#power-domain-cells = <0>;
286+
};
287+
power-domain@MT6795_POWER_DOMAIN_VENC {
288+
reg = <MT6795_POWER_DOMAIN_VENC>;
289+
clocks = <&topckgen CLK_TOP_MM_SEL>,
290+
<&topckgen CLK_TOP_VENC_SEL>;
291+
clock-names = "mm", "venc";
292+
#power-domain-cells = <0>;
293+
};
294+
power-domain@MT6795_POWER_DOMAIN_ISP {
295+
reg = <MT6795_POWER_DOMAIN_ISP>;
296+
clocks = <&topckgen CLK_TOP_MM_SEL>;
297+
clock-names = "mm";
298+
#power-domain-cells = <0>;
299+
};
300+
301+
power-domain@MT6795_POWER_DOMAIN_MM {
302+
reg = <MT6795_POWER_DOMAIN_MM>;
303+
clocks = <&topckgen CLK_TOP_MM_SEL>;
304+
clock-names = "mm";
305+
#power-domain-cells = <0>;
306+
mediatek,infracfg = <&infracfg>;
307+
};
308+
309+
power-domain@MT6795_POWER_DOMAIN_MJC {
310+
reg = <MT6795_POWER_DOMAIN_MJC>;
311+
clocks = <&topckgen CLK_TOP_MM_SEL>,
312+
<&topckgen CLK_TOP_MJC_SEL>;
313+
clock-names = "mm", "mjc";
314+
#power-domain-cells = <0>;
315+
};
316+
317+
power-domain@MT6795_POWER_DOMAIN_AUDIO {
318+
reg = <MT6795_POWER_DOMAIN_AUDIO>;
319+
#power-domain-cells = <0>;
320+
};
321+
322+
mfg_async: power-domain@MT6795_POWER_DOMAIN_MFG_ASYNC {
323+
reg = <MT6795_POWER_DOMAIN_MFG_ASYNC>;
324+
clocks = <&clk26m>;
325+
clock-names = "mfg";
326+
#address-cells = <1>;
327+
#size-cells = <0>;
328+
#power-domain-cells = <1>;
329+
330+
power-domain@MT6795_POWER_DOMAIN_MFG_2D {
331+
reg = <MT6795_POWER_DOMAIN_MFG_2D>;
332+
#address-cells = <1>;
333+
#size-cells = <0>;
334+
#power-domain-cells = <1>;
335+
336+
power-domain@MT6795_POWER_DOMAIN_MFG {
337+
reg = <MT6795_POWER_DOMAIN_MFG>;
338+
#power-domain-cells = <0>;
339+
mediatek,infracfg = <&infracfg>;
340+
};
341+
};
342+
};
343+
};
344+
};
345+
267346
pio: pinctrl@10005000 {
268347
compatible = "mediatek,mt6795-pinctrl";
269348
reg = <0 0x10005000 0 0x1000>, <0 0x1000b000 0 0x1000>;

0 commit comments

Comments
 (0)