Re: [Linux-stm32] [BUG] Error applying setting, reverse things back on lot of devices

From: Alexandre Torgue
Date: Wed Nov 04 2020 - 05:51:21 EST


Hi Ahmad

On 11/4/20 11:28 AM, Ahmad Fatoum wrote:
Hello,

On 11/2/20 9:27 PM, Michał Mirosław wrote:
On Mon, Nov 02, 2020 at 01:48:54PM +0100, Ahmad Fatoum wrote:
Hello Michał,

CC += linux-stm32

On 10/24/20 1:53 PM, Michał Mirosław wrote:
On Fri, Oct 23, 2020 at 10:39:43PM +0200, Corentin Labbe wrote:
On Fri, Oct 23, 2020 at 03:42:01PM +0200, Corentin Labbe wrote:
On Wed, Oct 21, 2020 at 08:31:49PM +0200, Corentin Labbe wrote:
I have just saw thoses 3 lines which are probably the real problem.
I have started a new bisect with this error, but it is hitting the same "crash range" the first one.


I have bisected the problem to commit aea6cb99703e17019e025aa71643b4d3e0a24413 ("regulator: resolve supply after creating regulator")
Reverting this fix my problem.

The change broke boot on all the STM32MP1 boards, because the STPMIC driver
has a vref_ddr regulator, which does not have a dedicated supply, but without
a vref_ddr-supply property the system now no longer boots.
[...]

Can you catch debug logs for the bootup in question? I'm not sure what's
the failure mode in your case. I guess this is not a bypassed regulator?

Boot up with v5.10-rc2 + your cf1ad559a2 ("regulator: defer probe when trying
to get voltage from unresolved supply") hangs:

[ 1.151489] stm32f7-i2c 40015000.i2c: STM32F7 I2C-0 bus adapter
[ 1.180698] stpmic1 1-0033: PMIC Chip Version: 0x10
[ 1.189526] vddcore: supplied by regulator-dummy
[ 1.195633] vdd_ddr: supplied by regulator-dummy
[ 1.201672] vdd: supplied by regulator-dummy
[ 1.207452] v3v3: supplied by 5V2
[ 1.211997] v1v8_audio: supplied by v3v3
[ 1.218036] v3v3_hdmi: supplied by 5V2
[ 1.223626] vtt_ddr: supplied by regulator-dummy
[ 1.227107] vdd_usb: supplied by regulator-dummy
[ 1.234532] vdda: supplied by 5V2
[ 1.239497] v1v2_hdmi: supplied by v3v3

Boot up with v5.10-rc2 with aea6cb99 ("regulator: resolve supply after
creating regulator") reverted boots correctly:

[ 1.151458] stm32f7-i2c 40015000.i2c: STM32F7 I2C-0 bus adapter
[ 1.180668] stpmic1 1-0033: PMIC Chip Version: 0x10
[ 1.186629] BUCK1: supplied by regulator-dummy
[ 1.192628] BUCK2: supplied by regulator-dummy
[ 1.198667] BUCK3: supplied by regulator-dummy
[ 1.204623] BUCK4: supplied by 5V2
[ 1.209424] LDO1: supplied by v3v3
[ 1.214931] LDO2: supplied by 5V2
[ 1.219897] LDO3: supplied by regulator-dummy
[ 1.225784] LDO4: supplied by regulator-dummy
[ 1.229239] LDO5: supplied by 5V2
[ 1.235097] LDO6: supplied by v3v3
[ 1.240164] VREF_DDR: supplied by regulator-dummy
[ 1.246130] BOOST: supplied by 5V2
[ 1.248617] VBUS_OTG: supplied by bst_out
[ 1.252698] SW_OUT: supplied by bst_out

Boot up with v5.10-rc2 + your cf1ad559a2 + &pmic { regulators { vref_ddr-supply = <&reg_5v2>; }

Just to know, Did you test v5.10-rc2 + vref_ddr-supply = <&reg_5v2>; ? (which seems to correspond to the patch I sent for DK/EV STM32 boards)

boots correctly as well:

[ 1.151531] stm32f7-i2c 40015000.i2c: STM32F7 I2C-0 bus adapter
[ 1.180759] stpmic1 1-0033: PMIC Chip Version: 0x10
[ 1.189543] vddcore: supplied by regulator-dummy
[ 1.195651] vdd_ddr: supplied by regulator-dummy
[ 1.201687] vdd: supplied by regulator-dummy
[ 1.207470] v3v3: supplied by 5V2
[ 1.212015] v1v8_audio: supplied by v3v3
[ 1.218053] v3v3_hdmi: supplied by 5V2
[ 1.223647] vtt_ddr: supplied by regulator-dummy
[ 1.227128] vdd_usb: supplied by regulator-dummy
[ 1.234553] vdda: supplied by 5V2
[ 1.239510] v1v2_hdmi: supplied by v3v3
[ 1.244932] vref_ddr: supplied by 5V2
[ 1.247397] bst_out: supplied by 5V2
[ 1.251338] vbus_otg: supplied by bst_out
[ 1.255416] vbus_sw: supplied by bst_out


Cheers
Ahmad


Best Regards,
Michał Mirosław