[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