From: Mikhail Kalashnikov <iuncuim@gmail.com>
All devices based on the A523/A527/H728/T527 processors contain a G57 MC1 GPU.
Enable the DT nodes for this GPU and specify a regulator that supplies power
to the SoC's VDD_GPU pins. The other parameters are set in the SoC dtsi,
so are board independent.
Signed-off-by: Mikhail Kalashnikov <iuncuim@gmail.com>
---
arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts | 5 +++++
arch/arm64/boot/dts/allwinner/sun55i-h728-x96qpro+.dts | 5 +++++
arch/arm64/boot/dts/allwinner/sun55i-t527-avaota-a1.dts | 5 +++++
arch/arm64/boot/dts/allwinner/sun55i-t527-orangepi-4a.dts | 5 +++++
4 files changed, 20 insertions(+)
diff --git a/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts b/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts
index 8bc0f2c72..553ad774e 100644
--- a/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts
+++ b/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts
@@ -66,6 +66,11 @@ &gmac0 {
status = "okay";
};
+&gpu {
+ mali-supply = <®_dcdc2>;
+ status = "okay";
+};
+
&mdio0 {
ext_rgmii_phy: ethernet-phy@1 {
compatible = "ethernet-phy-ieee802.3-c22";
diff --git a/arch/arm64/boot/dts/allwinner/sun55i-h728-x96qpro+.dts b/arch/arm64/boot/dts/allwinner/sun55i-h728-x96qpro+.dts
index 59db10354..a96927fbd 100644
--- a/arch/arm64/boot/dts/allwinner/sun55i-h728-x96qpro+.dts
+++ b/arch/arm64/boot/dts/allwinner/sun55i-h728-x96qpro+.dts
@@ -54,6 +54,11 @@ &ehci1 {
status = "okay";
};
+&gpu {
+ mali-supply = <®_dcdc2>;
+ status = "okay";
+};
+
&mmc0 {
vmmc-supply = <®_vcc3v3>;
cd-gpios = <&pio 5 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PF6 */
diff --git a/arch/arm64/boot/dts/allwinner/sun55i-t527-avaota-a1.dts b/arch/arm64/boot/dts/allwinner/sun55i-t527-avaota-a1.dts
index 142177c1f..b9eeb6753 100644
--- a/arch/arm64/boot/dts/allwinner/sun55i-t527-avaota-a1.dts
+++ b/arch/arm64/boot/dts/allwinner/sun55i-t527-avaota-a1.dts
@@ -76,6 +76,11 @@ &gmac0 {
status = "okay";
};
+&gpu {
+ mali-supply = <®_dcdc2>;
+ status = "okay";
+};
+
&mdio0 {
ext_rgmii_phy: ethernet-phy@1 {
compatible = "ethernet-phy-ieee802.3-c22";
diff --git a/arch/arm64/boot/dts/allwinner/sun55i-t527-orangepi-4a.dts b/arch/arm64/boot/dts/allwinner/sun55i-t527-orangepi-4a.dts
index 5f97505ec..d07bb9193 100644
--- a/arch/arm64/boot/dts/allwinner/sun55i-t527-orangepi-4a.dts
+++ b/arch/arm64/boot/dts/allwinner/sun55i-t527-orangepi-4a.dts
@@ -95,6 +95,11 @@ &ehci1 {
status = "okay";
};
+&gpu {
+ mali-supply = <®_dcdc2>;
+ status = "okay";
+};
+
&mmc0 {
vmmc-supply = <®_cldo3>;
cd-gpios = <&pio 5 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PF6 */
--
2.50.0
On Fri, 11 Jul 2025 11:57:29 +0800 iuncuim <iuncuim@gmail.com> wrote: > From: Mikhail Kalashnikov <iuncuim@gmail.com> > > All devices based on the A523/A527/H728/T527 processors contain a G57 MC1 GPU. > > Enable the DT nodes for this GPU and specify a regulator that supplies power > to the SoC's VDD_GPU pins. The other parameters are set in the SoC dtsi, > so are board independent. Checked the schematics of the three boards where those are available, and it's indeed DCDC2 there providing the voltage. For the X96QPro+, regulators.txt in debugs confirms this as well. > Signed-off-by: Mikhail Kalashnikov <iuncuim@gmail.com> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Cheers, Andre > --- > arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts | 5 +++++ > arch/arm64/boot/dts/allwinner/sun55i-h728-x96qpro+.dts | 5 +++++ > arch/arm64/boot/dts/allwinner/sun55i-t527-avaota-a1.dts | 5 +++++ > arch/arm64/boot/dts/allwinner/sun55i-t527-orangepi-4a.dts | 5 +++++ > 4 files changed, 20 insertions(+) > > diff --git a/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts b/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts > index 8bc0f2c72..553ad774e 100644 > --- a/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts > +++ b/arch/arm64/boot/dts/allwinner/sun55i-a527-cubie-a5e.dts > @@ -66,6 +66,11 @@ &gmac0 { > status = "okay"; > }; > > +&gpu { > + mali-supply = <®_dcdc2>; > + status = "okay"; > +}; > + > &mdio0 { > ext_rgmii_phy: ethernet-phy@1 { > compatible = "ethernet-phy-ieee802.3-c22"; > diff --git a/arch/arm64/boot/dts/allwinner/sun55i-h728-x96qpro+.dts b/arch/arm64/boot/dts/allwinner/sun55i-h728-x96qpro+.dts > index 59db10354..a96927fbd 100644 > --- a/arch/arm64/boot/dts/allwinner/sun55i-h728-x96qpro+.dts > +++ b/arch/arm64/boot/dts/allwinner/sun55i-h728-x96qpro+.dts > @@ -54,6 +54,11 @@ &ehci1 { > status = "okay"; > }; > > +&gpu { > + mali-supply = <®_dcdc2>; > + status = "okay"; > +}; > + > &mmc0 { > vmmc-supply = <®_vcc3v3>; > cd-gpios = <&pio 5 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PF6 */ > diff --git a/arch/arm64/boot/dts/allwinner/sun55i-t527-avaota-a1.dts b/arch/arm64/boot/dts/allwinner/sun55i-t527-avaota-a1.dts > index 142177c1f..b9eeb6753 100644 > --- a/arch/arm64/boot/dts/allwinner/sun55i-t527-avaota-a1.dts > +++ b/arch/arm64/boot/dts/allwinner/sun55i-t527-avaota-a1.dts > @@ -76,6 +76,11 @@ &gmac0 { > status = "okay"; > }; > > +&gpu { > + mali-supply = <®_dcdc2>; > + status = "okay"; > +}; > + > &mdio0 { > ext_rgmii_phy: ethernet-phy@1 { > compatible = "ethernet-phy-ieee802.3-c22"; > diff --git a/arch/arm64/boot/dts/allwinner/sun55i-t527-orangepi-4a.dts b/arch/arm64/boot/dts/allwinner/sun55i-t527-orangepi-4a.dts > index 5f97505ec..d07bb9193 100644 > --- a/arch/arm64/boot/dts/allwinner/sun55i-t527-orangepi-4a.dts > +++ b/arch/arm64/boot/dts/allwinner/sun55i-t527-orangepi-4a.dts > @@ -95,6 +95,11 @@ &ehci1 { > status = "okay"; > }; > > +&gpu { > + mali-supply = <®_dcdc2>; > + status = "okay"; > +}; > + > &mmc0 { > vmmc-supply = <®_cldo3>; > cd-gpios = <&pio 5 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PF6 */
© 2016 - 2025 Red Hat, Inc.