[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:11:26 PST 2026


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?

Thanks
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-arm-kernel mailing list