ARM: dts: exynos: Add Mali/GPU node on Exynos5420 and enable it on Odroid XU3/4

Add device tree node for Mali GPU on Exynos 542x SoC family.  GPU is
disabled by default, and is enabled for each board after the regulator
is defined. Tested on Odroid XU4.

Signed-off-by: Marian Mihailescu <mihailescu2m@gmail.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
This commit is contained in:
Marian Mihailescu 2019-11-15 10:12:11 +10:30 committed by Krzysztof Kozlowski
parent d4ec0cb050
commit 1a5a85c564
2 changed files with 55 additions and 1 deletions

View file

@ -670,6 +670,56 @@ gsc_1: video-scaler@13e10000 {
iommus = <&sysmmu_gscl1>; iommus = <&sysmmu_gscl1>;
}; };
gpu: gpu@11800000 {
compatible = "samsung,exynos5420-mali", "arm,mali-t628";
reg = <0x11800000 0x5000>;
interrupts = <GIC_SPI 219 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "job", "mmu", "gpu";
clocks = <&clock CLK_G3D>;
clock-names = "core";
power-domains = <&g3d_pd>;
operating-points-v2 = <&gpu_opp_table>;
status = "disabled";
#cooling-cells = <2>;
gpu_opp_table: opp-table {
compatible = "operating-points-v2";
opp-177000000 {
opp-hz = /bits/ 64 <177000000>;
opp-microvolt = <812500>;
};
opp-266000000 {
opp-hz = /bits/ 64 <266000000>;
opp-microvolt = <862500>;
};
opp-350000000 {
opp-hz = /bits/ 64 <350000000>;
opp-microvolt = <912500>;
};
opp-420000000 {
opp-hz = /bits/ 64 <420000000>;
opp-microvolt = <962500>;
};
opp-480000000 {
opp-hz = /bits/ 64 <480000000>;
opp-microvolt = <1000000>;
};
opp-543000000 {
opp-hz = /bits/ 64 <543000000>;
opp-microvolt = <1037500>;
};
opp-600000000 {
opp-hz = /bits/ 64 <600000000>;
opp-microvolt = <1150000>;
};
};
};
scaler_0: scaler@12800000 { scaler_0: scaler@12800000 {
compatible = "samsung,exynos5420-scaler"; compatible = "samsung,exynos5420-scaler";
reg = <0x12800000 0x1294>; reg = <0x12800000 0x1294>;

View file

@ -522,7 +522,6 @@ buck4_reg: BUCK4 {
regulator-name = "vdd_g3d"; regulator-name = "vdd_g3d";
regulator-min-microvolt = <800000>; regulator-min-microvolt = <800000>;
regulator-max-microvolt = <1400000>; regulator-max-microvolt = <1400000>;
regulator-always-on;
regulator-boot-on; regulator-boot-on;
regulator-state-mem { regulator-state-mem {
@ -654,6 +653,11 @@ &tmu_gpu {
vtmu-supply = <&ldo7_reg>; vtmu-supply = <&ldo7_reg>;
}; };
&gpu {
mali-supply = <&buck4_reg>;
status = "okay";
};
&rtc { &rtc {
status = "okay"; status = "okay";
clocks = <&clock CLK_RTC>, <&s2mps11_osc S2MPS11_CLK_AP>; clocks = <&clock CLK_RTC>, <&s2mps11_osc S2MPS11_CLK_AP>;