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

Sebastian Reichel sebastian.reichel at collabora.com
Thu Sep 19 12:27:17 PDT 2024


Hi,

On Thu, Sep 19, 2024 at 01:33:25PM GMT, Jonas Karlman wrote:
> 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 at collabora.com>
> > Tested-by: Adrian Larumbe <adrian.larumbe at collabora.com> # On Rock 5B
> > Signed-off-by: Sebastian Reichel <sebastian.reichel at collabora.com>
> > ---
> >  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-quartzpro64.dts

These two I skipped initially, since they have the GPU regulators
always enabled due to the coupling. I'm not 100% sure if the GPU
or the GPU-MEM regulator (or both) are required for the GPU power
domain.

> rk3588-nanopc-t6.dtsi
> rk3588s-gameforce-ace.dts
> rk3588s-odroid-m2.dts

... And these I missed, since they are new.

I don't have enough time to prepare a v3 before my vacation.
Note, that not describing the regulator just keeps the current
behaviour.

> 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.

Yes, I already discussed that in Vienna with Heiko and Tomeu. The
binding change also allows adding a regulator to the NPU power
domain.

> 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

Yes, that looks like the same issue and I guess the changes to the Rockchip
power-domain driver should also work for rk356x. I don't have one, though.

-- Sebastian
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-rockchip/attachments/20240919/a03a7080/attachment.sig>


More information about the Linux-rockchip mailing list