Re: [PATCH 2/4] arm64: dts: rockchip: add ARM Mali GPU node for RK3399 SoCs
在 2017年07月12日 15:19, Heiko Stuebner 写道: Hi Caesar, Am Mittwoch, 12. Juli 2017, 14:29:28 CEST schrieb Caesar Wang: 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. As the ARM's mali driver found on https://developer.arm.com/products/software/mali-drivers/midgard-kernel. Signed-off-by: Caesar Wang --- arch/arm64/boot/dts/rockchip/rk3399-op1-opp.dtsi | 33 arch/arm64/boot/dts/rockchip/rk3399-opp.dtsi | 33 arch/arm64/boot/dts/rockchip/rk3399.dtsi | 16 3 files changed, 82 insertions(+) [...] diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi b/arch/arm64/boot/dts/rockchip/rk3399.dtsi index 1cbd7a2..8c6438b 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi @@ -1443,6 +1443,22 @@ status = "disabled"; }; + gpu: gpu@ff9a { + compatible = "arm,rk3399-mali", +"arm,malit860", +"arm,malit86x", +"arm,malit8xx"; no wildcards and correct compatibles please. The binding specifies arm,mali-t860 for your chip and the soc specific compatible needs a rockchip vendor, so you need compatible = "rockchip,rk3399-mali", "arm,mali-t860"; Okay, sound resonable. + reg = <0x0 0xff9a 0x0 0x1>; + interrupts = , +, +; + interrupt-names = "GPU", "JOB", "MMU"; interrupt names are job, mmu, gpu in lower case. The out-of-tree driver will need to conform to that. Okay, we need update the ARM's mali driver to follow up. + clocks = <&cru ACLK_GPU>; + clock-names = "clk_mali"; no clock-names property, as midgard malis only have one clock input Sorry, I seem to be reference for the MAILI's document, not the Linux document. Update these for patches v2. Thanks your comments. -Caesar Heiko ___ Linux-rockchip mailing list linux-rockc...@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-rockchip
Re: [PATCH 2/4] arm64: dts: rockchip: add ARM Mali GPU node for RK3399 SoCs
Hi Caesar, Am Mittwoch, 12. Juli 2017, 14:29:28 CEST schrieb Caesar Wang: > 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. As the ARM's mali driver found on > https://developer.arm.com/products/software/mali-drivers/midgard-kernel. > > Signed-off-by: Caesar Wang > --- > > arch/arm64/boot/dts/rockchip/rk3399-op1-opp.dtsi | 33 > > arch/arm64/boot/dts/rockchip/rk3399-opp.dtsi | 33 > > arch/arm64/boot/dts/rockchip/rk3399.dtsi | 16 > 3 files changed, 82 insertions(+) [...] > diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi > b/arch/arm64/boot/dts/rockchip/rk3399.dtsi > index 1cbd7a2..8c6438b 100644 > --- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi > +++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi > @@ -1443,6 +1443,22 @@ > status = "disabled"; > }; > > + gpu: gpu@ff9a { > + compatible = "arm,rk3399-mali", > + "arm,malit860", > + "arm,malit86x", > + "arm,malit8xx"; no wildcards and correct compatibles please. The binding specifies arm,mali-t860 for your chip and the soc specific compatible needs a rockchip vendor, so you need compatible = "rockchip,rk3399-mali", "arm,mali-t860"; > + reg = <0x0 0xff9a 0x0 0x1>; > + interrupts = , > + , > + ; > + interrupt-names = "GPU", "JOB", "MMU"; interrupt names are job, mmu, gpu in lower case. The out-of-tree driver will need to conform to that. > + clocks = <&cru ACLK_GPU>; > + clock-names = "clk_mali"; no clock-names property, as midgard malis only have one clock input Heiko
[PATCH 2/4] 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. As the ARM's mali driver found on https://developer.arm.com/products/software/mali-drivers/midgard-kernel. Signed-off-by: Caesar Wang --- arch/arm64/boot/dts/rockchip/rk3399-op1-opp.dtsi | 33 arch/arm64/boot/dts/rockchip/rk3399-opp.dtsi | 33 arch/arm64/boot/dts/rockchip/rk3399.dtsi | 16 3 files changed, 82 insertions(+) diff --git a/arch/arm64/boot/dts/rockchip/rk3399-op1-opp.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-op1-opp.dtsi index be7fe63..d8a120f 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399-op1-opp.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399-op1-opp.dtsi @@ -118,6 +118,35 @@ opp-microvolt = <125>; }; }; + + gpu_opp_table: opp-table2 { + compatible = "operating-points-v2"; + + opp00 { + opp-hz = /bits/ 64 <2>; + opp-microvolt = <80>; + }; + opp01 { + opp-hz = /bits/ 64 <29700>; + opp-microvolt = <80>; + }; + opp02 { + opp-hz = /bits/ 64 <4>; + opp-microvolt = <825000>; + }; + opp03 { + opp-hz = /bits/ 64 <5>; + opp-microvolt = <85>; + }; + opp04 { + opp-hz = /bits/ 64 <6>; + opp-microvolt = <925000>; + }; + opp05 { + opp-hz = /bits/ 64 <8>; + opp-microvolt = <1075000>; + }; + }; }; &cpu_l0 { @@ -143,3 +172,7 @@ &cpu_b1 { operating-points-v2 = <&cluster1_opp>; }; + +&gpu { + operating-points-v2 = <&gpu_opp_table>; +}; diff --git a/arch/arm64/boot/dts/rockchip/rk3399-opp.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-opp.dtsi index c83460d..81617bc 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399-opp.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399-opp.dtsi @@ -110,6 +110,35 @@ opp-microvolt = <120>; }; }; + + gpu_opp_table: opp-table2 { + compatible = "operating-points-v2"; + + opp00 { + opp-hz = /bits/ 64 <2>; + opp-microvolt = <80>; + }; + opp01 { + opp-hz = /bits/ 64 <29700>; + opp-microvolt = <80>; + }; + opp02 { + opp-hz = /bits/ 64 <4>; + opp-microvolt = <825000>; + }; + opp03 { + opp-hz = /bits/ 64 <5>; + opp-microvolt = <875000>; + }; + opp04 { + opp-hz = /bits/ 64 <6>; + opp-microvolt = <925000>; + }; + opp05 { + opp-hz = /bits/ 64 <8>; + opp-microvolt = <110>; + }; + }; }; &cpu_l0 { @@ -135,3 +164,7 @@ &cpu_b1 { operating-points-v2 = <&cluster1_opp>; }; + +&gpu { + operating-points-v2 = <&gpu_opp_table>; +}; diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi b/arch/arm64/boot/dts/rockchip/rk3399.dtsi index 1cbd7a2..8c6438b 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi @@ -1443,6 +1443,22 @@ status = "disabled"; }; + gpu: gpu@ff9a { + compatible = "arm,rk3399-mali", +"arm,malit860", +"arm,malit86x", +"arm,malit8xx"; + reg = <0x0 0xff9a 0x0 0x1>; + interrupts = , +, +; + interrupt-names = "GPU", "JOB", "MMU"; + clocks = <&cru ACLK_GPU>; + clock-names = "clk_mali"; + power-domains = <&power RK3399_PD_GPU>; + status = "disabled"; + }; + pinctrl: pinctrl { compatible = "rockchip,rk3399-pinctrl"; rockchip,grf = <&grf>; -- 2.7.4