From: Jonas Karlman <jonas@kwiboo.se>
To: Sebastian Reichel <sebastian.reichel@collabora.com>
Cc: "Rob Herring" <robh@kernel.org>,
"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
"Conor Dooley" <conor+dt@kernel.org>,
"Heiko Stuebner" <heiko@sntech.de>,
"Ulf Hansson" <ulf.hansson@linaro.org>,
"Elaine Zhang" <zhangqing@rock-chips.com>,
"Adrián Martínez Larumbe" <adrian.larumbe@collabora.com>,
"Boris Brezillon" <boris.brezillon@collabora.com>,
"Chen-Yu Tsai" <wens@csie.org>,
devicetree@vger.kernel.org, linux-rockchip@lists.infradead.org,
linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org,
kernel@collabora.com
Subject: Re: [PATCH v2 6/6] arm64: dts: rockchip: Add GPU power domain regulator dependency for RK3588
Date: Thu, 19 Sep 2024 23:00:52 +0200 [thread overview]
Message-ID: <e55c3d9b-52fb-48bf-8336-238f8922dfe5@kwiboo.se> (raw)
In-Reply-To: <zvzrjkacazxbv4cjxcnihv4rb2t3tu2zjd6zkny63ygfifpz7i@j4saijws5rcp>
Hi,
On 2024-09-19 21:27, Sebastian Reichel wrote:
> 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@collabora.com>
>>> Tested-by: Adrian Larumbe <adrian.larumbe@collabora.com> # On Rock 5B
>>> Signed-off-by: Sebastian Reichel <sebastian.reichel@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.
Great, so no technical reason :-)
>
> I don't have enough time to prepare a v3 before my vacation.
> Note, that not describing the regulator just keeps the current
> behaviour.
Yeah, remaining boards can be updated in a separate/follow-up series.
>
>> 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.
Great and good to know.
>
>> 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.
I will test this series and try to add domain-supply for GPU and NPU on
a few rk356x boards, should help avoid possible issues in future.
Will also send a U-Boot series to enable RK806 PMIC support on a few
more rk3588 boards, should help ensure always-on/boot-on PMIC regulators
are enabled before Linux is started.
Regards,
Jonas
>
> -- Sebastian
next prev parent reply other threads:[~2024-09-19 21:01 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-09-19 9:12 [PATCH v2 0/6] Fix RK3588 GPU domain Sebastian Reichel
2024-09-19 9:12 ` [PATCH v2 1/6] pmdomain: rockchip: cleanup mutex handling in rockchip_pd_power Sebastian Reichel
2024-09-19 9:12 ` [PATCH v2 2/6] pmdomain: rockchip: forward rockchip_do_pmu_set_power_domain errors Sebastian Reichel
2024-09-19 9:12 ` [PATCH v2 3/6] pmdomain: rockchip: reduce indentation in rockchip_pd_power Sebastian Reichel
2024-09-19 9:12 ` [PATCH v2 4/6] dt-bindings: power: rockchip: add regulator support Sebastian Reichel
2024-10-02 14:02 ` Robin Murphy
2024-09-19 9:12 ` [PATCH v2 5/6] pmdomain: " Sebastian Reichel
2024-09-20 23:03 ` Chen-Yu Tsai
2024-09-19 9:12 ` [PATCH v2 6/6] arm64: dts: rockchip: Add GPU power domain regulator dependency for RK3588 Sebastian Reichel
2024-09-19 11:33 ` Jonas Karlman
2024-09-19 19:27 ` Sebastian Reichel
2024-09-19 21:00 ` Jonas Karlman [this message]
2024-10-02 10:59 ` [PATCH v2 0/6] Fix RK3588 GPU domain Ulf Hansson
2024-10-02 13:12 ` Chen-Yu Tsai
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=e55c3d9b-52fb-48bf-8336-238f8922dfe5@kwiboo.se \
--to=jonas@kwiboo.se \
--cc=adrian.larumbe@collabora.com \
--cc=boris.brezillon@collabora.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=heiko@sntech.de \
--cc=kernel@collabora.com \
--cc=krzk+dt@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=robh@kernel.org \
--cc=sebastian.reichel@collabora.com \
--cc=ulf.hansson@linaro.org \
--cc=wens@csie.org \
--cc=zhangqing@rock-chips.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®