[PATCH 4/8] arm64: dts: imx8mm-kontron: Fix reg_rst_eth2 and reg_vdd_5v regulators

Shawn Guo shawnguo at kernel.org
Thu Oct 14 21:09:05 PDT 2021


On Tue, Oct 05, 2021 at 07:06:57PM +0200, Frieder Schrempf wrote:
> On 05.10.21 09:09, Shawn Guo wrote:
> > On Thu, Sep 30, 2021 at 05:56:27PM +0200, Frieder Schrempf wrote:
> >> From: Frieder Schrempf <frieder.schrempf at kontron.de>
> >>
> >> The regulator reg_vdd_5v represents the fixed 5V supply on the board which
> >> can't be switched off. Mark it as always-on.
> >>
> >> The regulator reg_rst_eth2 should keep the reset signal of the USB ethernet
> >> adapter deassertet anytime. Fix the polarity and mark it as always-on.
> > 
> > It seems to be wrong from the beginning that the reset is modelled by a
> > regulator.
> 
> Right, but at least at the time when I upstreamed this, there was no way
> to pass the reset GPIO to a USB device driver and using a regulator
> seems to be an accepted workaround as far as I understand.

Do we have the solution in usb driver now?  If so, we should probably
switch to that, instead of patching the workaround?

Shawn

> 
> > 
> >>
> >> Fixes: 21c4f45b335f ("arm64: dts: Add the Kontron i.MX8M Mini SoMs and baseboards")
> >> Cc: stable at vger.kernel.org
> >> Signed-off-by: Frieder Schrempf <frieder.schrempf at kontron.de>
> >> ---
> >>  arch/arm64/boot/dts/freescale/imx8mm-kontron-n801x-s.dts | 5 ++++-
> >>  1 file changed, 4 insertions(+), 1 deletion(-)
> >>
> >> diff --git a/arch/arm64/boot/dts/freescale/imx8mm-kontron-n801x-s.dts b/arch/arm64/boot/dts/freescale/imx8mm-kontron-n801x-s.dts
> >> index 62ba3bd08a0c..f2c8ccefd1bf 100644
> >> --- a/arch/arm64/boot/dts/freescale/imx8mm-kontron-n801x-s.dts
> >> +++ b/arch/arm64/boot/dts/freescale/imx8mm-kontron-n801x-s.dts
> >> @@ -70,7 +70,9 @@ reg_rst_eth2: regulator-rst-eth2 {
> >>  		regulator-name = "rst-usb-eth2";
> >>  		pinctrl-names = "default";
> >>  		pinctrl-0 = <&pinctrl_usb_eth2>;
> >> -		gpio = <&gpio3 2 GPIO_ACTIVE_LOW>;
> >> +		gpio = <&gpio3 2 GPIO_ACTIVE_HIGH>;
> >> +		enable-active-high;
> >> +		regulator-always-on;
> >>  	};
> >>  
> >>  	reg_vdd_5v: regulator-5v {
> >> @@ -78,6 +80,7 @@ reg_vdd_5v: regulator-5v {
> >>  		regulator-name = "vdd-5v";
> >>  		regulator-min-microvolt = <5000000>;
> >>  		regulator-max-microvolt = <5000000>;
> >> +		regulator-always-on;
> > 
> > You do not have any on/off control over the regulator.  So how does this
> > always-on property make any difference?
> 
> Right, this doesn't make a difference and is definitely not a fix, I
> will drop it. Anyway, this regulator is just there for completeness of
> the hardware description.
> 
> > 
> >>  	};
> >>  };
> >>  
> >> -- 
> >> 2.33.0
> >>



More information about the linux-arm-kernel mailing list