[PATCH 2/2] arm64: dts: rockchip: Add domain-supply for pd_rkvdec0/1 and pd_venc0/1

Heiko Stuebner heiko at sntech.de
Sun Feb 22 05:15:28 PST 2026


Am Sonntag, 22. Februar 2026, 14:11:26 Mitteleuropäische Normalzeit schrieb Heiko Stuebner:
> Hi Shawn,
> 
> Am Freitag, 13. Februar 2026, 03:42:07 Mitteleuropäische Normalzeit schrieb Shawn Lin:
> > 在 2026/02/13 星期五 10:35, Shawn Lin 写道:
> > > The power domains pd_rkvdec0/1 and pd_venc0/1 depend on two voltage supplies,
> > > vdd_vdenc_s0 and vdd_vdenc_mem_s0. These supplies might be missing or cause probe
> > > deferral. Since the Rockchip power domain management code currently supports managing
> > > only one power supply, and both supplies belong to the same PMIC (making it highly
> > > unlikely for one to be available while the other is not), a practical solution is
> > > implemented.
> > > 
> > > Both supplies are configured with the boot-on and always-on properties. Only one
> > > of them is assigned as the domain-supply for pd_rkvdec0/1 and pd_venc0/1. This allows
> > > the power domain code to perform a nominal enable operation on this single supply,
> > > thereby successfully acquiring a reference to both supplies (as they are from the same
> > > PMIC). The system then relies on their boot-on and always-on flags to maintain the
> > > correct state.
> > > 
> > > Crucially, this approach handles cases like probe deferral correctly:
> > > if the PMIC is not yet ready, enabling the power domain will be deferred until the
> > > necessary supplies become available.
> 
> just as a question, does the board have problems without these supplies?
> Aka, is this a fix for a problem, or "just" future proofing the board?

Ah, I take everything back. The pmdomain patch in
   https://lore.kernel.org/r/1770891364-52147-1-git-send-email-shawn.lin@rock-chips.com
is the actual fix.

With that patch applied all board should work correctly by deferring
the vdec probe until each board adds its domain-supply.

To not cause too much disturbance, this then counts as feature :-)

Heiko



> > > Signed-off-by: Shawn Lin <shawn.lin at rock-chips.com>
> > > ---
> > > 
> > >   arch/arm64/boot/dts/rockchip/rk3588-evb1-v10.dts  | 16 ++++++++++++++++
> > >   arch/arm64/boot/dts/rockchip/rk3588s-evb1-v10.dts | 17 +++++++++++++++++
> > >   2 files changed, 33 insertions(+)
> > > 
> > > diff --git a/arch/arm64/boot/dts/rockchip/rk3588-evb1-v10.dts b/arch/arm64/boot/dts/rockchip/rk3588-evb1-v10.dts
> > > index c9d284c..09bc7b6 100644
> > > --- a/arch/arm64/boot/dts/rockchip/rk3588-evb1-v10.dts
> > > +++ b/arch/arm64/boot/dts/rockchip/rk3588-evb1-v10.dts
> > > @@ -568,6 +568,22 @@
> > >   	domain-supply = <&vdd_gpu_s0>;
> > >   };
> > >   
> > > +&pd_rkvdec0 {
> > > +	domain-supply = <&vdd_vdenc_s0>;
> > > +};
> > > +
> > > +&pd_rkvdec1 {
> > > +	domain-supply = <&vdd_vdenc_s0>;
> > > +};
> > > +
> > > +&pd_venc0 {
> > > +	domain-supply = <&vdd_vdenc_s0>;
> > > +};
> > > +
> > > +&pd_venc1 {
> > > +	domain-supply = <&vdd_vdenc_s0>;
> > > +};
> > > +
> > >   &pinctrl {
> > >   	audio {
> > >   		hp_detect: headphone-detect {
> > > diff --git a/arch/arm64/boot/dts/rockchip/rk3588s-evb1-v10.dts b/arch/arm64/boot/dts/rockchip/rk3588s-evb1-v10.dts
> > > index f820505..25d80b6 100644
> > > --- a/arch/arm64/boot/dts/rockchip/rk3588s-evb1-v10.dts
> > > +++ b/arch/arm64/boot/dts/rockchip/rk3588s-evb1-v10.dts
> > > @@ -381,6 +381,22 @@
> > >   	domain-supply = <&vdd_gpu_s0>;
> > >   };
> > >   
> > > +&pd_rkvdec0 {
> > > +	domain-supply = <&vdd_vdenc_s0>;
> > > +};
> > > +
> > > +&pd_rkvdec1 {
> > > +	domain-supply = <&vdd_vdenc_s0>;
> > > +};
> > > +
> > > +&pd_venc0 {
> > > +	domain-supply = <&vdd_vdenc_s0>;
> > > +};
> > > +
> > > +&pd_venc1 {
> > > +	domain-supply = <&vdd_vdenc_s0>;
> > > +};
> > > +
> > >   &pinctrl {
> > >   	audio {
> > >   		hp_detect: headphone-detect {
> > > @@ -580,6 +596,7 @@
> > >   			vdd_gpu_mem_s0: dcdc-reg5 {
> > >   				regulator-name = "vdd_gpu_mem_s0";
> > >   				regulator-boot-on;
> > > +				regulator-always-on;
> > 
> > Oops, I sent the wrong version. Should remove the this line change.
> > Will fix it if v2 needed.
> > 
> > >   				regulator-min-microvolt = <675000>;
> > >   				regulator-max-microvolt = <950000>;
> > >   				regulator-ramp-delay = <12500>;
> > > 
> > 
> 
> 







More information about the Linux-rockchip mailing list