Re: [PATCH v2] ARM: dts: sun8i-r40: remove unused GPIO regulator

From: Andre Przywara
Date: Fri Dec 13 2024 - 20:17:06 EST


On Fri, 13 Dec 2024 20:54:33 +0100
Hermann.Lauer@xxxxxxxxxxxxxxxxx wrote:

Hi,

CC:ing Icenowy, who added the regulator originally, with commit
0ca12c1ee43c ("ARM: sun8i: r40: add 5V regulator for Banana Pi M2
Ultra").

Icenowy: can you clarify what "newer" version this was referring to in
that commit message? That commit in itself doesn't seem to do anything,
as the regulator isn't referenced, and it's not always-on. It's only
later when the USB nodes were added that it got used?
So was PH23 really necessary? As Hermann reports, setting PH23 on a v1.1
makes it reboot.

> Subject: [PATCH v2] ARM: dts: sun8i-r40: remove unused GPIO regulator

Hermann, this looks like an extra subject line here?

> Banana Pi M2 Ultra V1.1 board resets immediately when the usb core tries
> to setup PH23 GPIO. It turned out that the V1.0 board USB-A ports are
> always power supplied and according to the board scheme PH23 is simply
> not connected.
>
> So remove the PH23 setup: Doesn't harm V1.0 (with R40) and let V1.1
> (with A40i) start.
>
> Signed-off-by: Hermann Lauer <Hermann.Lauer@xxxxxxxxxxxxxxxxx>

The patch itself looks good to me, but it would be good to clarify the
situation with the "older newer" version.

Just in case:
Reviewed-by: Andre Przywara <andre.przywara@xxxxxxx>

Cheers,
Andre

> ---
> V2: shorten subject, rm dangerous PH23 regulator completely
>
> diff --git a/arch/arm/boot/dts/allwinner/sun8i-r40-bananapi-m2-ultra.dts b/arch/arm/boot/dts/allwinner/sun8i-r40-bananapi-m2-ultra.dts
> --- a/arch/arm/boot/dts/allwinner/sun8i-r40-bananapi-m2-ultra.dts
> +++ b/arch/arm/boot/dts/allwinner/sun8i-r40-bananapi-m2-ultra.dts
> @@ -91,15 +91,6 @@
> };
> };
>
> - reg_vcc5v0: vcc5v0 {
> - compatible = "regulator-fixed";
> - regulator-name = "vcc5v0";
> - regulator-min-microvolt = <5000000>;
> - regulator-max-microvolt = <5000000>;
> - gpio = <&pio 7 23 GPIO_ACTIVE_HIGH>; /* PH23 */
> - enable-active-high;
> - };
> -
> wifi_pwrseq: pwrseq {
> compatible = "mmc-pwrseq-simple";
> reset-gpios = <&pio 6 10 GPIO_ACTIVE_LOW>; /* PG10 WIFI_EN */
> @@ -347,7 +338,5 @@
> };
>
> &usbphy {
> - usb1_vbus-supply = <&reg_vcc5v0>;
> - usb2_vbus-supply = <&reg_vcc5v0>;
> status = "okay";
> };
>