Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 68d19331 authored by Caesar Wang's avatar Caesar Wang Committed by Heiko Stuebner
Browse files

arm64: dts: rockchip: add ARM Mali GPU node for RK3399 SoCs

Add Mali GPU device tree node for the RK3399 SoCs, with devfreq
opp table.

RK3399 and RK3399-OP1 SoCs have a different recommendation table with
gpu opp. Also, the ARM's mali driver found on
https://developer.arm.com/products/software/mali-drivers/midgard-kernel

.

Signed-off-by: default avatarCaesar Wang <wxt@rock-chips.com>
Signed-off-by: default avatarHeiko Stuebner <heiko@sntech.de>
parent 7ca36914
Loading
Loading
Loading
Loading
+33 −0
Original line number Diff line number Diff line
@@ -118,6 +118,35 @@
			opp-microvolt = <1250000>;
		};
	};

	gpu_opp_table: opp-table2 {
		compatible = "operating-points-v2";

		opp00 {
			opp-hz = /bits/ 64 <200000000>;
			opp-microvolt = <800000>;
		};
		opp01 {
			opp-hz = /bits/ 64 <297000000>;
			opp-microvolt = <800000>;
		};
		opp02 {
			opp-hz = /bits/ 64 <400000000>;
			opp-microvolt = <825000>;
		};
		opp03 {
			opp-hz = /bits/ 64 <500000000>;
			opp-microvolt = <850000>;
		};
		opp04 {
			opp-hz = /bits/ 64 <600000000>;
			opp-microvolt = <925000>;
		};
		opp05 {
			opp-hz = /bits/ 64 <800000000>;
			opp-microvolt = <1075000>;
		};
	};
};

&cpu_l0 {
@@ -143,3 +172,7 @@
&cpu_b1 {
	operating-points-v2 = <&cluster1_opp>;
};

&gpu {
	operating-points-v2 = <&gpu_opp_table>;
};
+33 −0
Original line number Diff line number Diff line
@@ -110,6 +110,35 @@
			opp-microvolt = <1200000>;
		};
	};

	gpu_opp_table: opp-table2 {
		compatible = "operating-points-v2";

		opp00 {
			opp-hz = /bits/ 64 <200000000>;
			opp-microvolt = <800000>;
		};
		opp01 {
			opp-hz = /bits/ 64 <297000000>;
			opp-microvolt = <800000>;
		};
		opp02 {
			opp-hz = /bits/ 64 <400000000>;
			opp-microvolt = <825000>;
		};
		opp03 {
			opp-hz = /bits/ 64 <500000000>;
			opp-microvolt = <875000>;
		};
		opp04 {
			opp-hz = /bits/ 64 <600000000>;
			opp-microvolt = <925000>;
		};
		opp05 {
			opp-hz = /bits/ 64 <800000000>;
			opp-microvolt = <1100000>;
		};
	};
};

&cpu_l0 {
@@ -135,3 +164,7 @@
&cpu_b1 {
	operating-points-v2 = <&cluster1_opp>;
};

&gpu {
	operating-points-v2 = <&gpu_opp_table>;
};
+12 −0
Original line number Diff line number Diff line
@@ -1443,6 +1443,18 @@
		status = "disabled";
	};

	gpu: gpu@ff9a0000 {
		compatible = "rockchip,rk3399-mali", "arm,mali-t860";
		reg = <0x0 0xff9a0000 0x0 0x10000>;
		interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH 0>,
			     <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH 0>,
			     <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH 0>;
		interrupt-names = "gpu", "job", "mmu";
		clocks = <&cru ACLK_GPU>;
		power-domains = <&power RK3399_PD_GPU>;
		status = "disabled";
	};

	pinctrl: pinctrl {
		compatible = "rockchip,rk3399-pinctrl";
		rockchip,grf = <&grf>;