Re: [PATCH v1] arm64: dts: qcom: Add fixed regulators for WLAN supplies

From: Qian Zhang

Date: Fri May 08 2026 - 23:16:25 EST


On Thu, May 7, 2026 at 9:58 PM Bjorn Andersson <andersson@xxxxxxxxxx> wrote:
>
> On Fri, May 01, 2026 at 01:19:18PM +0800, Qian Zhang wrote:
>
> There shouldn't be a "v1" tag in your subject, and the subject prefix
> should be:
>
> arm64: dts: qcom: monaco-arduino-monza: ...
>
Thank you for the review. Apologies for the formatting issues.
The previous version (v1) can be found at:
https://lore.kernel.org/all/20260425031712.3800662-1-qian.zhang@xxxxxxxxxxxxxxxx/

> > Add GPIO-controlled fixed regulators for the WLAN power rails on the
> > Arduino VENTUNO Q board:
> >
> > - wlan_reg_3v3: 3.3V supply controlled by GPIO54 (wlan_rf_kill)
> > - wlan_reg_1v8: 1.8V supply controlled by GPIO56 (wlan_en)
>
> Those really sounds like gpios, rather than regulators. Why are they
> represented as regulators. Please start your commit message by
> describing the "problem" that you're solving.
>
> >
> > Both regulators are enabled at boot to support WLAN initialization.
> >
> > Signed-off-by: Qian Zhang <qian.zhang@xxxxxxxxxxxxxxxx>
> > ---
> > Changes in v1:
>
> What do you mean? Changes since version 0?
>
> > - Clarified GPIO roles: GPIO54 for wlan_rf_kill, GPIO56 for wlan_en
> > - Improved commit message readability with bullet list format
>
> It's impossible for me to know if the regulator vs gpio was already
> discussed, because you didn't include a link to the previous version.
>
> Use b4 instead of doing your own thing, it will handle the versioning
> for you and it will provide links to previous versions.
>
I will use b4 for future submissions to handle versioning and
automatically include links to previous versions.

Regarding the subject: I will fix it to:
arm64: dts: qcom: monaco-arduino-monza: ...
and remove the "v1" tag from the subject line.

> >
> > .../boot/dts/qcom/monaco-arduino-monza.dts | 21 +++++++++++++++++++
> > 1 file changed, 21 insertions(+)
> >
> > diff --git a/arch/arm64/boot/dts/qcom/monaco-arduino-monza.dts b/arch/arm64/boot/dts/qcom/monaco-arduino-monza.dts
> > index ca14f0ea4dae..1a40ac5bb4bb 100644
> > --- a/arch/arm64/boot/dts/qcom/monaco-arduino-monza.dts
> > +++ b/arch/arm64/boot/dts/qcom/monaco-arduino-monza.dts
> > @@ -153,6 +153,27 @@ vreg_nvme: regulator-3p3-m2 {
> > enable-active-high;
> > startup-delay-us = <20000>;
> > };
> > +
> > + wlan_reg_3v3: wlan-3v3-regulator {
> > + compatible = "regulator-fixed";
> > + regulator-name = "wlan_3v3";
> > + regulator-min-microvolt = <3300000>;
> > + regulator-max-microvolt = <3300000>;
> > + gpio = <&tlmm 54 GPIO_ACTIVE_HIGH>;
> > + enable-active-high;
> > + regulator-boot-on;
> > + };
> > +
> > + wlan_reg_1v8: wlan-1v8-regulator {
>
> Shouldn't these two regulators be referenced from a WiFi or PMU node?
>
Regarding regulator vs gpio: you are correct. These two GPIOs serve
distinct purposes and regulator-fixed is not the right abstraction:

- GPIO54 (rfkill): controls the RF kill line. I will replace this
with a rfkill-gpio node so the rfkill subsystem can properly
manage RF state.

- GPIO56 (wlan_en): must be asserted before PCIe enumeration so
the WLAN module is detectable by the PCIe root complex.
I will model it as a regulator-fixed and reference it from the PCIe node
via vddpe-1v8-supply.

I will rework the patch in the next version with a corrected commit
message that describes the problem first.

> Regards,
> Bjorn
>
> > + compatible = "regulator-fixed";
> > + regulator-name = "wlan_1v8";
> > + regulator-min-microvolt = <1800000>;
> > + regulator-max-microvolt = <1800000>;
> > + gpio = <&tlmm 56 GPIO_ACTIVE_HIGH>;
> > + enable-active-high;
> > + regulator-boot-on;
> > + };
> > +
> > };
> >
> > &ethernet0 {
> > --
> > 2.34.1
> >