Devicetree
 help / color / mirror / Atom feed
* [PATCH v2 0/3] arm64: dts: allwinner: h6: Enable GPU and CPU DVFS on more boards
@ 2026-11-15 13:22 Jernej Skrabec
  2026-11-15 13:22 ` [PATCH v2 1/3] arm64: dts: allwinner: h6: orangepi: Add regulator ramp delays Jernej Skrabec
                   ` (3 more replies)
  0 siblings, 4 replies; 7+ messages in thread
From: Jernej Skrabec @ 2026-11-15 13:22 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
	Samuel Holland
  Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel,
	Jernej Skrabec

Most H6 boards don't use the GPU OPP table, and the Orange Pi One Plus
and Lite2 lack CPU DVFS as well, so their GPU and CPU run at a fixed
clock rate. This series enables both.

Changes in v2:
- new patch 1: add regulator-ramp-delay to vdd-cpu and vdd-gpu on the
  Orange Pi One Plus and Lite2, like on the other AXP805-based H6 boards

Link to v1: https://lore.kernel.org/linux-sunxi/20261104184940.882833-1-jernej.skrabec@gmail.com/

Jernej Skrabec (3):
  arm64: dts: allwinner: h6: orangepi: Add regulator ramp delays
  arm64: dts: allwinner: h6: Add GPU OPP table to all boards
  arm64: dts: allwinner: h6: orangepi: Enable CPU frequency scaling

 arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi-3.dts | 1 +
 arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi  | 8 ++++++++
 arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dts   | 1 +
 arch/arm64/boot/dts/allwinner/sun50i-h6-tanix.dtsi     | 1 +
 4 files changed, 11 insertions(+)


base-commit: 6628e7d4c6b25c8d18f1345e3a20d21829aae7e4
-- 
2.43.0


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH v2 1/3] arm64: dts: allwinner: h6: orangepi: Add regulator ramp delays
  2026-11-15 13:22 [PATCH v2 0/3] arm64: dts: allwinner: h6: Enable GPU and CPU DVFS on more boards Jernej Skrabec
@ 2026-11-15 13:22 ` Jernej Skrabec
  2026-11-15 13:22 ` [PATCH v2 2/3] arm64: dts: allwinner: h6: Add GPU OPP table to all boards Jernej Skrabec
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 7+ messages in thread
From: Jernej Skrabec @ 2026-11-15 13:22 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
	Samuel Holland
  Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel,
	Jernej Skrabec

The vdd-cpu and vdd-gpu regulators on the Orange Pi One Plus and Lite2
have no ramp delay, and the AXP805 driver provides none either. Once
DVFS is enabled, the OPP core would raise the clock rate right after
setting a higher voltage, before the regulator output has settled.

Add the same 2500 uV/us ramp delay that the other AXP805-based H6
boards use.

Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
---
 arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi
index e34dbb992021..cbe88ee6a487 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi
@@ -202,6 +202,7 @@ reg_dcdca: dcdca {
 				regulator-always-on;
 				regulator-min-microvolt = <810000>;
 				regulator-max-microvolt = <1080000>;
+				regulator-ramp-delay = <2500>;
 				regulator-name = "vdd-cpu";
 			};
 
@@ -209,6 +210,7 @@ reg_dcdcc: dcdcc {
 				regulator-enable-ramp-delay = <32000>;
 				regulator-min-microvolt = <810000>;
 				regulator-max-microvolt = <1080000>;
+				regulator-ramp-delay = <2500>;
 				regulator-name = "vdd-gpu";
 			};
 
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH v2 2/3] arm64: dts: allwinner: h6: Add GPU OPP table to all boards
  2026-11-15 13:22 [PATCH v2 0/3] arm64: dts: allwinner: h6: Enable GPU and CPU DVFS on more boards Jernej Skrabec
  2026-11-15 13:22 ` [PATCH v2 1/3] arm64: dts: allwinner: h6: orangepi: Add regulator ramp delays Jernej Skrabec
@ 2026-11-15 13:22 ` Jernej Skrabec
  2026-11-15 13:22 ` [PATCH v2 3/3] arm64: dts: allwinner: h6: orangepi: Enable CPU frequency scaling Jernej Skrabec
  2026-11-15 15:07 ` [PATCH v2 0/3] arm64: dts: allwinner: h6: Enable GPU and CPU DVFS on more boards Chen-Yu Tsai
  3 siblings, 0 replies; 7+ messages in thread
From: Jernej Skrabec @ 2026-11-15 13:22 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
	Samuel Holland
  Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel,
	Jernej Skrabec

Only the Beelink GS1 and TaiQiCat A01 include the H6 GPU OPP table, so
the GPU on all other H6 boards runs at a fixed clock rate. Include it on
the remaining boards, so devfreq can scale the GPU clock for either
better performance or lower power consumption.

The table also works with a fixed GPU supply, as on Tanix boards.

Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
---
 arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi-3.dts | 1 +
 arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi  | 1 +
 arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dts   | 1 +
 arch/arm64/boot/dts/allwinner/sun50i-h6-tanix.dtsi     | 1 +
 4 files changed, 4 insertions(+)

diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi-3.dts b/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi-3.dts
index dc7381c944c9..ce82aa265cfd 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi-3.dts
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi-3.dts
@@ -5,6 +5,7 @@
 
 #include "sun50i-h6.dtsi"
 #include "sun50i-h6-cpu-opp.dtsi"
+#include "sun50i-h6-gpu-opp.dtsi"
 
 #include <dt-bindings/gpio/gpio.h>
 
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi
index cbe88ee6a487..40c5c42b347e 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi
@@ -5,6 +5,7 @@
 /dts-v1/;
 
 #include "sun50i-h6.dtsi"
+#include "sun50i-h6-gpu-opp.dtsi"
 
 #include <dt-bindings/gpio/gpio.h>
 
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dts b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dts
index fa7a765ee828..f4a5a2215ea2 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dts
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dts
@@ -5,6 +5,7 @@
 
 #include "sun50i-h6.dtsi"
 #include "sun50i-h6-cpu-opp.dtsi"
+#include "sun50i-h6-gpu-opp.dtsi"
 
 #include <dt-bindings/gpio/gpio.h>
 
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-tanix.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h6-tanix.dtsi
index bb7de37c0d58..f08077175549 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h6-tanix.dtsi
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-tanix.dtsi
@@ -5,6 +5,7 @@
 
 #include "sun50i-h6.dtsi"
 #include "sun50i-h6-cpu-opp.dtsi"
+#include "sun50i-h6-gpu-opp.dtsi"
 
 #include <dt-bindings/gpio/gpio.h>
 
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH v2 3/3] arm64: dts: allwinner: h6: orangepi: Enable CPU frequency scaling
  2026-11-15 13:22 [PATCH v2 0/3] arm64: dts: allwinner: h6: Enable GPU and CPU DVFS on more boards Jernej Skrabec
  2026-11-15 13:22 ` [PATCH v2 1/3] arm64: dts: allwinner: h6: orangepi: Add regulator ramp delays Jernej Skrabec
  2026-11-15 13:22 ` [PATCH v2 2/3] arm64: dts: allwinner: h6: Add GPU OPP table to all boards Jernej Skrabec
@ 2026-11-15 13:22 ` Jernej Skrabec
  2026-11-15 15:09   ` Chen-Yu Tsai
  2026-11-15 15:07 ` [PATCH v2 0/3] arm64: dts: allwinner: h6: Enable GPU and CPU DVFS on more boards Chen-Yu Tsai
  3 siblings, 1 reply; 7+ messages in thread
From: Jernej Skrabec @ 2026-11-15 13:22 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
	Samuel Holland
  Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel,
	Jernej Skrabec

The Orange Pi One Plus and Lite2 lack the CPU OPP table and CPU supply,
so the CPU never scales its frequency. Add both, like on Orange Pi 3.
OPPs above the regulator constraints stay unused.

Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
---
 arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi
index 40c5c42b347e..a2a2e4cb0256 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi
@@ -5,6 +5,7 @@
 /dts-v1/;
 
 #include "sun50i-h6.dtsi"
+#include "sun50i-h6-cpu-opp.dtsi"
 #include "sun50i-h6-gpu-opp.dtsi"
 
 #include <dt-bindings/gpio/gpio.h>
@@ -65,6 +66,10 @@ reg_vcc5v: vcc5v {
 	};
 };
 
+&cpu0 {
+	cpu-supply = <&reg_dcdca>;
+};
+
 &de {
 	status = "okay";
 };
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH v2 0/3] arm64: dts: allwinner: h6: Enable GPU and CPU DVFS on more boards
  2026-11-15 13:22 [PATCH v2 0/3] arm64: dts: allwinner: h6: Enable GPU and CPU DVFS on more boards Jernej Skrabec
                   ` (2 preceding siblings ...)
  2026-11-15 13:22 ` [PATCH v2 3/3] arm64: dts: allwinner: h6: orangepi: Enable CPU frequency scaling Jernej Skrabec
@ 2026-11-15 15:07 ` Chen-Yu Tsai
  3 siblings, 0 replies; 7+ messages in thread
From: Chen-Yu Tsai @ 2026-11-15 15:07 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Samuel Holland,
	Jernej Skrabec
  Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel

On Sun, 15 Nov 2026 14:22:11 +0100, Jernej Skrabec wrote:
> Most H6 boards don't use the GPU OPP table, and the Orange Pi One Plus
> and Lite2 lack CPU DVFS as well, so their GPU and CPU run at a fixed
> clock rate. This series enables both.
> 
> Changes in v2:
> - new patch 1: add regulator-ramp-delay to vdd-cpu and vdd-gpu on the
>   Orange Pi One Plus and Lite2, like on the other AXP805-based H6 boards
> 
> [...]

Applied to sunxi/dt-for-7.5 in sunxi, thanks!

[1/3] arm64: dts: allwinner: h6: orangepi: Add regulator ramp delays
      https://git.kernel.org/sunxi/linux/c/6442683b687c
[2/3] arm64: dts: allwinner: h6: Add GPU OPP table to all boards
      https://git.kernel.org/sunxi/linux/c/348a4f82f13b
[3/3] arm64: dts: allwinner: h6: orangepi: Enable CPU frequency scaling
      https://git.kernel.org/sunxi/linux/c/6527dd6be62e

Best regards,
-- 
Chen-Yu Tsai <wens@kernel.org>


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v2 3/3] arm64: dts: allwinner: h6: orangepi: Enable CPU frequency scaling
  2026-11-15 13:22 ` [PATCH v2 3/3] arm64: dts: allwinner: h6: orangepi: Enable CPU frequency scaling Jernej Skrabec
@ 2026-11-15 15:09   ` Chen-Yu Tsai
  2026-11-15 17:01     ` Jernej Škrabec
  0 siblings, 1 reply; 7+ messages in thread
From: Chen-Yu Tsai @ 2026-11-15 15:09 UTC (permalink / raw)
  To: Jernej Skrabec
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Samuel Holland,
	devicetree, linux-arm-kernel, linux-sunxi, linux-kernel

On Sun, Nov 15, 2026 at 9:22 PM Jernej Skrabec <jernej.skrabec@gmail.com> wrote:
>
> The Orange Pi One Plus and Lite2 lack the CPU OPP table and CPU supply,
> so the CPU never scales its frequency. Add both, like on Orange Pi 3.
> OPPs above the regulator constraints stay unused.

My review agent noted that some of the other boards raised the constraints
when CPU DVFS was enabled. Do you think it's reasonable to do the same
for the OrangePi? Or do you want to be more conservative?

Note that I already applied this series.

> Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
> ---
>  arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi | 5 +++++
>  1 file changed, 5 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi
> index 40c5c42b347e..a2a2e4cb0256 100644
> --- a/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi
> +++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi
> @@ -5,6 +5,7 @@
>  /dts-v1/;
>
>  #include "sun50i-h6.dtsi"
> +#include "sun50i-h6-cpu-opp.dtsi"
>  #include "sun50i-h6-gpu-opp.dtsi"
>
>  #include <dt-bindings/gpio/gpio.h>
> @@ -65,6 +66,10 @@ reg_vcc5v: vcc5v {
>         };
>  };
>
> +&cpu0 {
> +       cpu-supply = <&reg_dcdca>;
> +};
> +
>  &de {
>         status = "okay";
>  };
> --
> 2.43.0
>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v2 3/3] arm64: dts: allwinner: h6: orangepi: Enable CPU frequency scaling
  2026-11-15 15:09   ` Chen-Yu Tsai
@ 2026-11-15 17:01     ` Jernej Škrabec
  0 siblings, 0 replies; 7+ messages in thread
From: Jernej Škrabec @ 2026-11-15 17:01 UTC (permalink / raw)
  To: wens
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Samuel Holland,
	devicetree, linux-arm-kernel, linux-sunxi, linux-kernel

Dne nedelja, 15. november 2026 ob 16:09:23 Srednjeevropski standardni čas je Chen-Yu Tsai napisal(a):
> On Sun, Nov 15, 2026 at 9:22 PM Jernej Skrabec <jernej.skrabec@gmail.com> wrote:
> >
> > The Orange Pi One Plus and Lite2 lack the CPU OPP table and CPU supply,
> > so the CPU never scales its frequency. Add both, like on Orange Pi 3.
> > OPPs above the regulator constraints stay unused.
> 
> My review agent noted that some of the other boards raised the constraints
> when CPU DVFS was enabled. Do you think it's reasonable to do the same
> for the OrangePi? Or do you want to be more conservative?

Yes, I'll prepare patches for raising constraints.

Best regards,
Jernej

> 
> Note that I already applied this series.
> 
> > Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
> > ---
> >  arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi | 5 +++++
> >  1 file changed, 5 insertions(+)
> >
> > diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi
> > index 40c5c42b347e..a2a2e4cb0256 100644
> > --- a/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi
> > +++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi.dtsi
> > @@ -5,6 +5,7 @@
> >  /dts-v1/;
> >
> >  #include "sun50i-h6.dtsi"
> > +#include "sun50i-h6-cpu-opp.dtsi"
> >  #include "sun50i-h6-gpu-opp.dtsi"
> >
> >  #include <dt-bindings/gpio/gpio.h>
> > @@ -65,6 +66,10 @@ reg_vcc5v: vcc5v {
> >         };
> >  };
> >
> > +&cpu0 {
> > +       cpu-supply = <&reg_dcdca>;
> > +};
> > +
> >  &de {
> >         status = "okay";
> >  };
> > --
> > 2.43.0
> >
> 





^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2026-11-15 17:01 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-11-15 13:22 [PATCH v2 0/3] arm64: dts: allwinner: h6: Enable GPU and CPU DVFS on more boards Jernej Skrabec
2026-11-15 13:22 ` [PATCH v2 1/3] arm64: dts: allwinner: h6: orangepi: Add regulator ramp delays Jernej Skrabec
2026-11-15 13:22 ` [PATCH v2 2/3] arm64: dts: allwinner: h6: Add GPU OPP table to all boards Jernej Skrabec
2026-11-15 13:22 ` [PATCH v2 3/3] arm64: dts: allwinner: h6: orangepi: Enable CPU frequency scaling Jernej Skrabec
2026-11-15 15:09   ` Chen-Yu Tsai
2026-11-15 17:01     ` Jernej Škrabec
2026-11-15 15:07 ` [PATCH v2 0/3] arm64: dts: allwinner: h6: Enable GPU and CPU DVFS on more boards Chen-Yu Tsai

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox