Re: [PATCH] arm64: dts: imx95: remove CLK_GPUAPB

From: Marek Vasut

Date: Thu Jan 01 2026 - 11:57:52 EST


On 1/1/26 1:37 AM, Rain Yang wrote:
On Wed, Dec 31, 2025 at 03:11:21PM +0100, Marek Vasut wrote:
On 12/31/25 4:19 AM, Rain Yang wrote:
From: Rain Yang <jiyu.yang@xxxxxxx>

Dropping CLK_GPUAPB simplifies OPP handling and avoids unnecessary
complexity.

Fixes: 67934f248e64 ("arm64: dts: imx95: Describe Mali G310 GPU")
Signed-off-by: Rain Yang <jiyu.yang@xxxxxxx>
---
arch/arm64/boot/dts/freescale/imx95.dtsi | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/freescale/imx95.dtsi b/arch/arm64/boot/dts/freescale/imx95.dtsi
index 88bde59e61b2..ab446aa6f73c 100644
--- a/arch/arm64/boot/dts/freescale/imx95.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx95.dtsi
@@ -2164,8 +2164,8 @@ netc_emdio: mdio@0,0 {
gpu: gpu@4d900000 {
compatible = "nxp,imx95-mali", "arm,mali-valhall-csf";
reg = <0 0x4d900000 0 0x480000>;
- clocks = <&scmi_clk IMX95_CLK_GPU_CGC>, <&scmi_clk IMX95_CLK_GPUAPB>;
- clock-names = "core", "coregroup";
+ clocks = <&scmi_clk IMX95_CLK_GPU_CGC>;
+ clock-names = "core";

I don't think this is correct, SM can disable the GPUAPB clock from the SM
monitor:

$ clock.w gpuapb off

Linux has to make sure the GPUAPB clock are enabled to access the GPU
register, hence the clock have to be described in DT.
Hi Marek,

Hello Jiyu,

CLK_GPU and CLK_GPUAPB can only be controlled internally by the SM, not by Linux.
CLK_GPUAPB always runs at a fixed frequency, does not require dynamic adjustment,
and is practically always on.
Additionally, CLK_GPUAPB's frequency is absent from all OPP entries. Removing it
could simplify OPP handling logic and reduce unnecessary complexity.

But the SM can turn the GPUAPB clock off, correct ?

Linux has to be able to turn GPUAPB clock on, therefore the GPUAPB clock have to be described in DT, correct ?