[PATCH 1/2] ARM: dts: imx7-tqma7: correctly specify PMIC voltage constraints
Nora Schiffer
nora.schiffer at ew.tq-group.com
Thu Sep 3 03:11:36 PDT 2026
On Wed, 2026-09-02 at 11:11 -0500, Frank Li wrote:
> On Wed, Sep 02, 2026 at 10:05:37AM +0200, Nora Schiffer wrote:
> > regulator-(min|max)-microvolt refer to the supported voltages according
> > to board design, not the possible range of the regulators themselves.
>
> I think make sense, but any document or mail list can be refer to?
>
> Frank
Hi Frank,
I've occasionally seen this being mentioned in reviews like [1] when the
regulator-min/max was used incorrectly. The binding docs [2] say:
regulator-min-microvolt:
description: smallest voltage consumers may set
regulator-max-microvolt:
description: largest voltage consumers may set
which is not as clear as I would like... Right now I don't have a source that
feels definitive enough to include it in the commit description.
Best,
Nora
[1] https://lore.kernel.org/all/7b23de30-06e3-4f02-a8a5-90791628ceed@gmail.com/
[2]
https://www.kernel.org/doc/Documentation/devicetree/bindings/regulator/regulator.yaml
>
> > Update the configuration for the TQMa7x's PMIC and also add a comment
> > regarding the PMIC's VCC_SD switching feature.
> >
> > Fixes: a80a1af6ec8a ("ARM: dts: tq imx7 common board support")
> > Signed-off-by: Nora Schiffer <nora.schiffer at ew.tq-group.com>
> > ---
> > arch/arm/boot/dts/nxp/imx/imx7-tqma7.dtsi | 40 +++++++++++++----------
> > 1 file changed, 23 insertions(+), 17 deletions(-)
> >
> > diff --git a/arch/arm/boot/dts/nxp/imx/imx7-tqma7.dtsi b/arch/arm/boot/dts/nxp/imx/imx7-tqma7.dtsi
> > index e1f740edfb763..7f49c80fef4c6 100644
> > --- a/arch/arm/boot/dts/nxp/imx/imx7-tqma7.dtsi
> > +++ b/arch/arm/boot/dts/nxp/imx/imx7-tqma7.dtsi
> > @@ -46,8 +46,8 @@ pfuze3000: pmic at 8 {
> >
> > regulators {
> > sw1a_reg: sw1a {
> > - regulator-min-microvolt = <700000>;
> > - regulator-max-microvolt = <3300000>;
> > + regulator-min-microvolt = <1000000>;
> > + regulator-max-microvolt = <1225000>;
> > regulator-boot-on;
> > regulator-always-on;
> > regulator-ramp-delay = <6250>;
> > @@ -55,34 +55,33 @@ sw1a_reg: sw1a {
> >
> > /* use sw1c_reg to align with pfuze100/pfuze200 */
> > sw1c_reg: sw1b {
> > - regulator-min-microvolt = <700000>;
> > - regulator-max-microvolt = <1475000>;
> > + regulator-min-microvolt = <1000000>;
> > + regulator-max-microvolt = <1000000>;
> > regulator-boot-on;
> > regulator-always-on;
> > regulator-ramp-delay = <6250>;
> > };
> >
> > sw2_reg: sw2 {
> > - regulator-min-microvolt = <1500000>;
> > - regulator-max-microvolt = <1850000>;
> > + regulator-min-microvolt = <1800000>;
> > + regulator-max-microvolt = <1800000>;
> > regulator-boot-on;
> > regulator-always-on;
> > };
> >
> > sw3a_reg: sw3 {
> > - regulator-min-microvolt = <900000>;
> > - regulator-max-microvolt = <1650000>;
> > + regulator-min-microvolt = <1350000>;
> > + regulator-max-microvolt = <1350000>;
> > regulator-boot-on;
> > regulator-always-on;
> > };
> >
> > swbst_reg: swbst {
> > - regulator-min-microvolt = <5000000>;
> > - regulator-max-microvolt = <5150000>;
> > + /* Not connected and left unconfigured */
> > };
> >
> > snvs_reg: vsnvs {
> > - regulator-min-microvolt = <1000000>;
> > + regulator-min-microvolt = <3000000>;
> > regulator-max-microvolt = <3000000>;
> > regulator-boot-on;
> > regulator-always-on;
> > @@ -95,18 +94,25 @@ vref_reg: vrefddr {
> >
> > vgen1_reg: vldo1 {
> > regulator-min-microvolt = <1800000>;
> > - regulator-max-microvolt = <3300000>;
> > + regulator-max-microvolt = <1800000>;
> > regulator-always-on;
> > };
> >
> > vgen2_reg: vldo2 {
> > - regulator-min-microvolt = <800000>;
> > - regulator-max-microvolt = <1550000>;
> > + regulator-min-microvolt = <1500000>;
> > + regulator-max-microvolt = <1500000>;
> > regulator-always-on;
> > };
> >
> > vgen3_reg: vccsd {
> > - regulator-min-microvolt = <2850000>;
> > + /*
> > + * Specified values refer to 3.3V operation; voltage for 1.8V
> > + * operation is derived from this.
> > + *
> > + * The base board should usually mux GPIO1_IO08 to SD1_VSELECT for
> > + * automatic switching of SD card IO voltage.
> > + */
> > + regulator-min-microvolt = <3300000>;
> > regulator-max-microvolt = <3300000>;
> > regulator-always-on;
> > };
> > @@ -118,13 +124,13 @@ vgen4_reg: v33 {
> > };
> >
> > vgen5_reg: vldo3 {
> > - regulator-min-microvolt = <1800000>;
> > + regulator-min-microvolt = <3300000>;
> > regulator-max-microvolt = <3300000>;
> > regulator-always-on;
> > };
> >
> > vgen6_reg: vldo4 {
> > - regulator-min-microvolt = <1800000>;
> > + regulator-min-microvolt = <3300000>;
> > regulator-max-microvolt = <3300000>;
> > regulator-always-on;
> > };
> > --
> > TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany
> > Amtsgericht München, HRB 105018
> > Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider
> > https://www.tq-group.com/
> >
> >
--
TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany
Amtsgericht München, HRB 105018
Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider
https://www.tq-group.com/
More information about the linux-arm-kernel
mailing list