Hi Marek and Pascal,

> From: Marek Vasut <ma...@denx.de>
> 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 <patrice.chot...@st.com>
> Signed-off-by: Marek Vasut <ma...@denx.de>
> Cc: Manivannan Sadhasivam <manivannan.sadhasi...@linaro.org>
> Cc: Patrick Delaunay <patrick.delau...@st.com>
> Cc: Patrice Chotard <patrice.chot...@st.com>
> ---
> 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 = <1800000 0x1>,
>                        <2900000 0x0>;
>       };
> +
> +     /* Enpirion EP3A8LQI U2 on the DHCOR */
> +     vdd_io: regulator-buck-io {
> +             compatible = "regulator-fixed";
> +             regulator-name = "buck-io";
> +             regulator-min-microvolt = <1800000>;
> +             regulator-max-microvolt = <1800000>;
> +             regulator-always-on;
> +             regulator-boot-on;
> +             vin-supply = <&vdd>;
> +     };
>  };
> 
>  &ethernet0 {
> @@ -167,7 +178,7 @@
> 
>                       vddcore: buck1 {
>                               regulator-name = "vddcore";
> -                             regulator-min-microvolt = <1200000>;
> +                             regulator-min-microvolt = <800000>;

I don't understood this modification, If I correctly remember, on STM32MP15x 
On ST boards, we set this value to 1200000 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 = <1350000>;
>                               regulator-always-on;
>                               regulator-initial-mode = <0>;
> @@ -185,8 +196,8 @@
> 
>                       vdd: buck3 {
>                               regulator-name = "vdd";
> -                             regulator-min-microvolt = <3300000>;
> -                             regulator-max-microvolt = <3300000>;
> +                             regulator-min-microvolt = <2900000>;
> +                             regulator-max-microvolt = <2900000>;
>                               regulator-always-on;
>                               st,mask_reset;
>                               regulator-initial-mode = <0>;
> @@ -268,6 +279,7 @@
>                               regulator-name = "vbus_otg";
>                               interrupts = <IT_OCP_OTG 0>;
>                               interrupt-parent = <&pmic>;
> +                             regulator-active-discharge = <1>;

It seems this setting introduced other-consumption, it should not be used.

>                       };
> 
>                       vbus_sw: pwr_sw2 {
> @@ -304,7 +316,7 @@
>  };
> 
>  &pwr_regulators {
> -     vdd-supply = <&vdd>;
> +     vdd-supply = <&vdd_io>;
>       vdd_3v3_usbfs-supply = <&vdd_usb>;
>  };
> 
> --
> 2.25.1

I let Pascal complete my first feedback or react on the Linux upstream.

Patrick

Reply via email to