Re: [PATCH v2 6/6] arm64: dts: rockchip: Add GPU power domain regulator dependency for RK3588

From: Jonas Karlman
Date: Thu Sep 19 2024 - 07:34:07 EST


Hi Sebastian,

On 2024-09-19 11:12, Sebastian Reichel wrote:
> Enabling the GPU power domain requires that the GPU regulator is
> enabled. The regulator is enabled at boot time, but automatically
> gets disabled when there are no users.
>
> If the GPU driver is not probed at boot time or rebound while
> the system is running the system will try to enable the power
> domain before the regulator is enabled resulting in a failure
> hanging the whole system. Avoid this by adding an explicit
> dependency.
>
> Reported-by: Adrián Martínez Larumbe <adrian.larumbe@xxxxxxxxxxxxx>
> Tested-by: Adrian Larumbe <adrian.larumbe@xxxxxxxxxxxxx> # On Rock 5B
> Signed-off-by: Sebastian Reichel <sebastian.reichel@xxxxxxxxxxxxx>
> ---
> arch/arm64/boot/dts/rockchip/rk3588-armsom-sige7.dts | 4 ++++
> arch/arm64/boot/dts/rockchip/rk3588-base.dtsi | 2 +-
> arch/arm64/boot/dts/rockchip/rk3588-coolpi-cm5.dtsi | 4 ++++
> arch/arm64/boot/dts/rockchip/rk3588-friendlyelec-cm3588.dtsi | 4 ++++
> arch/arm64/boot/dts/rockchip/rk3588-jaguar.dts | 4 ++++
> arch/arm64/boot/dts/rockchip/rk3588-ok3588-c.dts | 4 ++++
> arch/arm64/boot/dts/rockchip/rk3588-rock-5-itx.dts | 4 ++++
> arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts | 4 ++++
> arch/arm64/boot/dts/rockchip/rk3588-tiger.dtsi | 4 ++++
> arch/arm64/boot/dts/rockchip/rk3588s-coolpi-4b.dts | 4 ++++
> arch/arm64/boot/dts/rockchip/rk3588s-khadas-edge2.dts | 4 ++++
> arch/arm64/boot/dts/rockchip/rk3588s-orangepi-5.dts | 4 ++++
> 12 files changed, 45 insertions(+), 1 deletion(-)
>

Any reason why following rk3588 DTs was not updated?

rk3588-evb1-v10.dts
rk3588-nanopc-t6.dtsi
rk3588-quartzpro64.dts
rk3588s-gameforce-ace.dts
rk3588s-odroid-m2.dts

I also expect we may need to define domain-supply for the npu on rk3588
and also both gpu and npu on rk356x in a future series.

Similar freeze issue has been observed on rk356x when booting vendor
kernel with npu support enabled using mainline U-Boot and DT [1].

To work around that issue on rk356x the npu regulator could be changed
to always-on/boot-on to get past the kernel freeze [2].

[1] https://github.com/armbian/build/pull/7025#issuecomment-2291067748
[2] https://github.com/Kwiboo/u-boot-rockchip/commit/da31da4b68f858f54364a21b0dd00fef2ab0d0d6

Regards,
Jonas