Re: [PATCH V3 12/14] ARM: dts: stm32: Repair PMIC configuration on AV96
On 4/2/20 3:43 PM, Pascal PAILLET-LME wrote: Hi, [...] No details on my side, it was a Pascal Paillet's direct feedback (Maintainer >> of STPMIC1 driver in Linux). >>> You can enable the active discharge on the STPMIC1's VBUSOTG. But, as >> soon as a USB host peripheral (such as laptop) will attach and provide VBUS, >> there will be a ~8mA continuous power consumption on VBUS through this >> OTG active discharge. There is no functional issue behind this 8mA; but you >> need to know that 8mA is not compliant with the USB suspend constraint >> (2.5mA max). >> >> So why is it in there ? > Sorry, I'm not sure to catch your point... The property is available because > the stpmic1 > Propose this feature (enable a pull down resistor when VBUS_OTG is disabled). > We have > Found during some test that it is better to not enable active discharge on > vbus_otg. > I hope it answers, > pascal Can you go into a bit more detail on what you found during your tests and why it was a problem ?
RE: [PATCH V3 12/14] ARM: dts: stm32: Repair PMIC configuration on AV96
> -Original Message- > From: Marek Vasut > Sent: jeudi 2 avril 2020 15:07 > To: Pascal PAILLET-LME ; Patrick DELAUNAY > ; Patrice CHOTARD ; u- > b...@lists.denx.de > Cc: Manivannan Sadhasivam ; > Alexandre TORGUE > Subject: Re: [PATCH V3 12/14] ARM: dts: stm32: Repair PMIC configuration > on AV96 > > On 4/2/20 2:53 PM, Pascal PAILLET-LME wrote: > > Hi Marek, > > Hi, > [...] > >>>>>>> vdd: buck3 { > >>>>>>> regulator-name = "vdd"; > >>>>>>> - regulator-min-microvolt = <330>; > >>>>>>> - regulator-max-microvolt = <330>; > >>>>>>> + regulator-min-microvolt = <290>; > >>>>>>> + regulator-max-microvolt = <290>; > >>>>>>> regulator-always-on; > >>>>>>> st,mask_reset; > >>>>>>> regulator-initial-mode = <0>; @@ - > >> 268,6 +279,7 @@ > >>>>>>> regulator-name = "vbus_otg"; > >>>>>>> interrupts = ; > >>>>>>> interrupt-parent = <>; > >>>>>>> + regulator-active-discharge = <1>; > >>>>>> It seems this setting introduced other-consumption, it should not be > >> used. > >>>>> Other-consumption ? What does that mean ? > >>>> > >>>> It's a typo, Patrick means over-consumption. > >>> > >>> Ah. Do you have any details on that ? > >> > >> Sorry for typo. > >> > >> No details on my side, it was a Pascal Paillet's direct feedback > >> (Maintainer > of > >> STPMIC1 driver in Linux). > > You can enable the active discharge on the STPMIC1's VBUSOTG. But, as > soon as a USB host peripheral (such as laptop) will attach and provide VBUS, > there will be a ~8mA continuous power consumption on VBUS through this > OTG active discharge. There is no functional issue behind this 8mA; but you > need to know that 8mA is not compliant with the USB suspend constraint > (2.5mA max). > > So why is it in there ? Sorry, I'm not sure to catch your point... The property is available because the stpmic1 Propose this feature (enable a pull down resistor when VBUS_OTG is disabled). We have Found during some test that it is better to not enable active discharge on vbus_otg. I hope it answers, pascal
RE: [PATCH V3 12/14] ARM: dts: stm32: Repair PMIC configuration on AV96
Hi Marek, > -Original Message- > From: Patrick DELAUNAY > Sent: mercredi 1 avril 2020 15:52 > To: Marek Vasut ; Patrice CHOTARD > ; u-boot@lists.denx.de; Pascal PAILLET-LME > > Cc: Manivannan Sadhasivam ; > Alexandre TORGUE > Subject: RE: [PATCH V3 12/14] ARM: dts: stm32: Repair PMIC configuration on > AV96 > > Hi, > > > From: Marek Vasut > > Sent: mercredi 1 avril 2020 14:53 > > To: Patrice CHOTARD ; Patrick DELAUNAY > > ; u-boot@lists.denx.de; Pascal PAILLET-LME > > > > Cc: Manivannan Sadhasivam ; > > Alexandre TORGUE > > Subject: Re: [PATCH V3 12/14] ARM: dts: stm32: Repair PMIC > > configuration on > > AV96 > > Importance: High > > > > On 4/1/20 2:45 PM, Patrice CHOTARD wrote: > > > > > > On 4/1/20 1:06 PM, Marek Vasut wrote: > > >> On 4/1/20 9:34 AM, Patrick DELAUNAY wrote: > > >>> Hi Marek and Pascal, > > >> Hi, > > >> > > >> [...] > [...] > > >>>>vdd: buck3 { > > >>>>regulator-name = "vdd"; > > >>>> - regulator-min-microvolt = <330>; > > >>>> - regulator-max-microvolt = <330>; > > >>>> + regulator-min-microvolt = <290>; > > >>>> + regulator-max-microvolt = <290>; > > >>>>regulator-always-on; > > >>>>st,mask_reset; > > >>>>regulator-initial-mode = <0>; @@ - > 268,6 +279,7 @@ > > >>>>regulator-name = "vbus_otg"; > > >>>>interrupts = ; > > >>>>interrupt-parent = <>; > > >>>> + regulator-active-discharge = <1>; > > >>> It seems this setting introduced other-consumption, it should not be > used. > > >> Other-consumption ? What does that mean ? > > > > > > It's a typo, Patrick means over-consumption. > > > > Ah. Do you have any details on that ? > > Sorry for typo. > > No details on my side, it was a Pascal Paillet's direct feedback (Maintainer > of > STPMIC1 driver in Linux). You can enable the active discharge on the STPMIC1's VBUSOTG. But, as soon as a USB host peripheral (such as laptop) will attach and provide VBUS, there will be a ~8mA continuous power consumption on VBUS through this OTG active discharge. There is no functional issue behind this 8mA; but you need to know that 8mA is not compliant with the USB suspend constraint (2.5mA max). > > Anyway he will review your patch for Linux, with more details, and I merge > this patch without modification for U-Boot. > > Patrick Pascal
Re: [PATCH V3 12/14] ARM: dts: stm32: Repair PMIC configuration on AV96
On 4/2/20 2:53 PM, Pascal PAILLET-LME wrote: > Hi Marek, Hi, [...] >>> vdd: buck3 { >>> regulator-name = "vdd"; >>> - regulator-min-microvolt = <330>; >>> - regulator-max-microvolt = <330>; >>> + regulator-min-microvolt = <290>; >>> + regulator-max-microvolt = <290>; >>> regulator-always-on; >>> st,mask_reset; >>> regulator-initial-mode = <0>; @@ - >> 268,6 +279,7 @@ >>> regulator-name = "vbus_otg"; >>> interrupts = ; >>> interrupt-parent = <>; >>> + regulator-active-discharge = <1>; >> It seems this setting introduced other-consumption, it should not be >> used. > Other-consumption ? What does that mean ? It's a typo, Patrick means over-consumption. >>> >>> Ah. Do you have any details on that ? >> >> Sorry for typo. >> >> No details on my side, it was a Pascal Paillet's direct feedback (Maintainer >> of >> STPMIC1 driver in Linux). > You can enable the active discharge on the STPMIC1's VBUSOTG. But, as soon as > a USB host peripheral (such as laptop) will attach and provide VBUS, there > will be a ~8mA continuous power consumption on VBUS through this OTG active > discharge. There is no functional issue behind this 8mA; but you need to know > that 8mA is not compliant with the USB suspend constraint (2.5mA max). So why is it in there ?
Re: [PATCH V3 12/14] ARM: dts: stm32: Repair PMIC configuration on AV96
On 4/1/20 3:52 PM, Patrick DELAUNAY wrote: > Hi, > >> From: Marek Vasut >> Sent: mercredi 1 avril 2020 14:53 >> To: Patrice CHOTARD ; Patrick DELAUNAY >> ; u-boot@lists.denx.de; Pascal PAILLET-LME >> >> Cc: Manivannan Sadhasivam ; Alexandre >> TORGUE >> Subject: Re: [PATCH V3 12/14] ARM: dts: stm32: Repair PMIC configuration on >> AV96 >> Importance: High >> >> On 4/1/20 2:45 PM, Patrice CHOTARD wrote: >>> >>> On 4/1/20 1:06 PM, Marek Vasut wrote: >>>> On 4/1/20 9:34 AM, Patrick DELAUNAY wrote: >>>>> Hi Marek and Pascal, >>>> Hi, >>>> >>>> [...] > [...] >>>>>> vdd: buck3 { >>>>>> regulator-name = "vdd"; >>>>>> -regulator-min-microvolt = <330>; >>>>>> -regulator-max-microvolt = <330>; >>>>>> +regulator-min-microvolt = <290>; >>>>>> +regulator-max-microvolt = <290>; >>>>>> regulator-always-on; >>>>>> st,mask_reset; >>>>>> regulator-initial-mode = <0>; >>>>>> @@ -268,6 +279,7 @@ >>>>>> regulator-name = "vbus_otg"; >>>>>> interrupts = ; >>>>>> interrupt-parent = <>; >>>>>> +regulator-active-discharge = <1>; >>>>> It seems this setting introduced other-consumption, it should not be used. >>>> Other-consumption ? What does that mean ? >>> >>> It's a typo, Patrick means over-consumption. >> >> Ah. Do you have any details on that ? > > Sorry for typo. > > No details on my side, it was a Pascal Paillet's direct feedback > (Maintainer of STPMIC1 driver in Linux). > > Anyway he will review your patch for Linux, with more details, > and I merge this patch without modification for U-Boot. OK
RE: [PATCH V3 12/14] ARM: dts: stm32: Repair PMIC configuration on AV96
Hi, > From: Marek Vasut > Sent: mercredi 1 avril 2020 14:53 > To: Patrice CHOTARD ; Patrick DELAUNAY > ; u-boot@lists.denx.de; Pascal PAILLET-LME > > Cc: Manivannan Sadhasivam ; Alexandre > TORGUE > Subject: Re: [PATCH V3 12/14] ARM: dts: stm32: Repair PMIC configuration on > AV96 > Importance: High > > On 4/1/20 2:45 PM, Patrice CHOTARD wrote: > > > > On 4/1/20 1:06 PM, Marek Vasut wrote: > >> On 4/1/20 9:34 AM, Patrick DELAUNAY wrote: > >>> Hi Marek and Pascal, > >> Hi, > >> > >> [...] [...] > >>>> vdd: buck3 { > >>>> regulator-name = "vdd"; > >>>> -regulator-min-microvolt = <330>; > >>>> -regulator-max-microvolt = <330>; > >>>> +regulator-min-microvolt = <290>; > >>>> +regulator-max-microvolt = <290>; > >>>> regulator-always-on; > >>>> st,mask_reset; > >>>> regulator-initial-mode = <0>; > >>>> @@ -268,6 +279,7 @@ > >>>> regulator-name = "vbus_otg"; > >>>> interrupts = ; > >>>> interrupt-parent = <>; > >>>> +regulator-active-discharge = <1>; > >>> It seems this setting introduced other-consumption, it should not be used. > >> Other-consumption ? What does that mean ? > > > > It's a typo, Patrick means over-consumption. > > Ah. Do you have any details on that ? Sorry for typo. No details on my side, it was a Pascal Paillet's direct feedback (Maintainer of STPMIC1 driver in Linux). Anyway he will review your patch for Linux, with more details, and I merge this patch without modification for U-Boot. Patrick
Re: [PATCH V3 12/14] ARM: dts: stm32: Repair PMIC configuration on AV96
On 4/1/20 2:45 PM, Patrice CHOTARD wrote: > > On 4/1/20 1:06 PM, Marek Vasut wrote: >> On 4/1/20 9:34 AM, Patrick DELAUNAY wrote: >>> Hi Marek and Pascal, >> Hi, >> >> [...] >> @@ -167,7 +178,7 @@ vddcore: buck1 { regulator-name = "vddcore"; - regulator-min-microvolt = <120>; + regulator-min-microvolt = <80>; >>> I don't understood this modification, If I correctly remember, on >>> STM32MP15x >>> On ST boards, we set this value to 120 to protect VDDCORE on >>> SOC (it is not allowed to be reduce lower than 1,2V. >>> >>> 0.8V is the minimal supported voltage by STPMIC but not the minal expected >>> VDDCORE. >> Then we should likely drop this part. >> >> That said, is the core voltage supposed to be 1V2 even in sleep states ? >> @@ -185,8 +196,8 @@ vdd: buck3 { regulator-name = "vdd"; - regulator-min-microvolt = <330>; - regulator-max-microvolt = <330>; + regulator-min-microvolt = <290>; + regulator-max-microvolt = <290>; regulator-always-on; st,mask_reset; regulator-initial-mode = <0>; @@ -268,6 +279,7 @@ regulator-name = "vbus_otg"; interrupts = ; interrupt-parent = <>; + regulator-active-discharge = <1>; >>> It seems this setting introduced other-consumption, it should not be used. >> Other-consumption ? What does that mean ? > > It's a typo, Patrick means over-consumption. Ah. Do you have any details on that ?
Re: [PATCH V3 12/14] ARM: dts: stm32: Repair PMIC configuration on AV96
On 4/1/20 1:06 PM, Marek Vasut wrote: > On 4/1/20 9:34 AM, Patrick DELAUNAY wrote: >> Hi Marek and Pascal, > Hi, > > [...] > >>> @@ -167,7 +178,7 @@ >>> >>> vddcore: buck1 { >>> regulator-name = "vddcore"; >>> - regulator-min-microvolt = <120>; >>> + regulator-min-microvolt = <80>; >> I don't understood this modification, If I correctly remember, on STM32MP15x >> On ST boards, we set this value to 120 to protect VDDCORE on >> SOC (it is not allowed to be reduce lower than 1,2V. >> >> 0.8V is the minimal supported voltage by STPMIC but not the minal expected >> VDDCORE. > Then we should likely drop this part. > > That said, is the core voltage supposed to be 1V2 even in sleep states ? > >>> @@ -185,8 +196,8 @@ >>> >>> vdd: buck3 { >>> regulator-name = "vdd"; >>> - regulator-min-microvolt = <330>; >>> - regulator-max-microvolt = <330>; >>> + regulator-min-microvolt = <290>; >>> + regulator-max-microvolt = <290>; >>> regulator-always-on; >>> st,mask_reset; >>> regulator-initial-mode = <0>; >>> @@ -268,6 +279,7 @@ >>> regulator-name = "vbus_otg"; >>> interrupts = ; >>> interrupt-parent = <>; >>> + regulator-active-discharge = <1>; >> It seems this setting introduced other-consumption, it should not be used. > Other-consumption ? What does that mean ? It's a typo, Patrick means over-consumption. Patrice
Re: [PATCH V3 12/14] ARM: dts: stm32: Repair PMIC configuration on AV96
On 4/1/20 9:34 AM, Patrick DELAUNAY wrote: > Hi Marek and Pascal, Hi, [...] >> @@ -167,7 +178,7 @@ >> >> vddcore: buck1 { >> regulator-name = "vddcore"; >> -regulator-min-microvolt = <120>; >> +regulator-min-microvolt = <80>; > > I don't understood this modification, If I correctly remember, on STM32MP15x > On ST boards, we set this value to 120 to protect VDDCORE on > SOC (it is not allowed to be reduce lower than 1,2V. > > 0.8V is the minimal supported voltage by STPMIC but not the minal expected > VDDCORE. Then we should likely drop this part. That said, is the core voltage supposed to be 1V2 even in sleep states ? >> @@ -185,8 +196,8 @@ >> >> vdd: buck3 { >> regulator-name = "vdd"; >> -regulator-min-microvolt = <330>; >> -regulator-max-microvolt = <330>; >> +regulator-min-microvolt = <290>; >> +regulator-max-microvolt = <290>; >> regulator-always-on; >> st,mask_reset; >> regulator-initial-mode = <0>; >> @@ -268,6 +279,7 @@ >> regulator-name = "vbus_otg"; >> interrupts = ; >> interrupt-parent = <>; >> +regulator-active-discharge = <1>; > > It seems this setting introduced other-consumption, it should not be used. Other-consumption ? What does that mean ?
RE: [PATCH V3 12/14] ARM: dts: stm32: Repair PMIC configuration on AV96
Hi, > From: Marek Vasut > Sent: mardi 31 mars 2020 19:52 > > The core and vdd PMIC buck regulators were misconfigured, which caused > instability of the board and malfunction of high-speed interfaces, like the > RGMII. > Configure the PMIC correctly to repair these problems. Also, model the missing > Enpirion EP53A8LQI on the DHCOR SoM as a fixed regulator. > > Reviewed-by: Patrice Chotard > Signed-off-by: Marek Vasut > Cc: Manivannan Sadhasivam > Cc: Patrick Delaunay > Cc: Patrice Chotard > --- Applied to u-boot-stm/master, thanks! Regards Patrick
RE: [PATCH V3 12/14] ARM: dts: stm32: Repair PMIC configuration on AV96
Hi Marek and Pascal, > From: Marek Vasut > Sent: mardi 31 mars 2020 19:52 > > The core and vdd PMIC buck regulators were misconfigured, which caused > instability of the board and malfunction of high-speed interfaces, like the > RGMII. > Configure the PMIC correctly to repair these problems. Also, model the missing > Enpirion EP53A8LQI on the DHCOR SoM as a fixed regulator. > > Reviewed-by: Patrice Chotard > Signed-off-by: Marek Vasut > Cc: Manivannan Sadhasivam > Cc: Patrick Delaunay > Cc: Patrice Chotard > --- > V2: - Model the Enpirion EP53A8LQI on the DHCOR SoM as a fixed regulator > - Adjust the PMIC voltages further > V3: No change > --- > arch/arm/dts/stm32mp157a-avenger96.dts | 20 > 1 file changed, 16 insertions(+), 4 deletions(-) > > diff --git a/arch/arm/dts/stm32mp157a-avenger96.dts > b/arch/arm/dts/stm32mp157a-avenger96.dts > index 8181d1fa05..97ff40144e 100644 > --- a/arch/arm/dts/stm32mp157a-avenger96.dts > +++ b/arch/arm/dts/stm32mp157a-avenger96.dts > @@ -91,6 +91,17 @@ > states = <180 0x1>, ><290 0x0>; > }; > + > + /* Enpirion EP3A8LQI U2 on the DHCOR */ > + vdd_io: regulator-buck-io { > + compatible = "regulator-fixed"; > + regulator-name = "buck-io"; > + regulator-min-microvolt = <180>; > + regulator-max-microvolt = <180>; > + regulator-always-on; > + regulator-boot-on; > + vin-supply = <>; > + }; > }; > > { > @@ -167,7 +178,7 @@ > > vddcore: buck1 { > regulator-name = "vddcore"; > - regulator-min-microvolt = <120>; > + regulator-min-microvolt = <80>; I don't understood this modification, If I correctly remember, on STM32MP15x On ST boards, we set this value to 120 to protect VDDCORE on SOC (it is not allowed to be reduce lower than 1,2V. 0.8V is the minimal supported voltage by STPMIC but not the minal expected VDDCORE. > regulator-max-microvolt = <135>; > regulator-always-on; > regulator-initial-mode = <0>; > @@ -185,8 +196,8 @@ > > vdd: buck3 { > regulator-name = "vdd"; > - regulator-min-microvolt = <330>; > - regulator-max-microvolt = <330>; > + regulator-min-microvolt = <290>; > + regulator-max-microvolt = <290>; > regulator-always-on; > st,mask_reset; > regulator-initial-mode = <0>; > @@ -268,6 +279,7 @@ > regulator-name = "vbus_otg"; > interrupts = ; > interrupt-parent = <>; > + regulator-active-discharge = <1>; It seems this setting introduced other-consumption, it should not be used. > }; > > vbus_sw: pwr_sw2 { > @@ -304,7 +316,7 @@ > }; > > _regulators { > - vdd-supply = <>; > + vdd-supply = <_io>; > vdd_3v3_usbfs-supply = <_usb>; > }; > > -- > 2.25.1 I let Pascal complete my first feedback or react on the Linux upstream. Patrick
[PATCH V3 12/14] ARM: dts: stm32: Repair PMIC configuration on AV96
The core and vdd PMIC buck regulators were misconfigured, which caused instability of the board and malfunction of high-speed interfaces, like the RGMII. Configure the PMIC correctly to repair these problems. Also, model the missing Enpirion EP53A8LQI on the DHCOR SoM as a fixed regulator. Reviewed-by: Patrice Chotard Signed-off-by: Marek Vasut Cc: Manivannan Sadhasivam Cc: Patrick Delaunay Cc: Patrice Chotard --- V2: - Model the Enpirion EP53A8LQI on the DHCOR SoM as a fixed regulator - Adjust the PMIC voltages further V3: No change --- arch/arm/dts/stm32mp157a-avenger96.dts | 20 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/arch/arm/dts/stm32mp157a-avenger96.dts b/arch/arm/dts/stm32mp157a-avenger96.dts index 8181d1fa05..97ff40144e 100644 --- a/arch/arm/dts/stm32mp157a-avenger96.dts +++ b/arch/arm/dts/stm32mp157a-avenger96.dts @@ -91,6 +91,17 @@ states = <180 0x1>, <290 0x0>; }; + + /* Enpirion EP3A8LQI U2 on the DHCOR */ + vdd_io: regulator-buck-io { + compatible = "regulator-fixed"; + regulator-name = "buck-io"; + regulator-min-microvolt = <180>; + regulator-max-microvolt = <180>; + regulator-always-on; + regulator-boot-on; + vin-supply = <>; + }; }; { @@ -167,7 +178,7 @@ vddcore: buck1 { regulator-name = "vddcore"; - regulator-min-microvolt = <120>; + regulator-min-microvolt = <80>; regulator-max-microvolt = <135>; regulator-always-on; regulator-initial-mode = <0>; @@ -185,8 +196,8 @@ vdd: buck3 { regulator-name = "vdd"; - regulator-min-microvolt = <330>; - regulator-max-microvolt = <330>; + regulator-min-microvolt = <290>; + regulator-max-microvolt = <290>; regulator-always-on; st,mask_reset; regulator-initial-mode = <0>; @@ -268,6 +279,7 @@ regulator-name = "vbus_otg"; interrupts = ; interrupt-parent = <>; + regulator-active-discharge = <1>; }; vbus_sw: pwr_sw2 { @@ -304,7 +316,7 @@ }; _regulators { - vdd-supply = <>; + vdd-supply = <_io>; vdd_3v3_usbfs-supply = <_usb>; }; -- 2.25.1