[PATCH 1/4] power: regulator: Trigger probe of regulators which are always-on or boot-on

Marek Vasut marex at denx.de
Thu Sep 12 10:05:26 CEST 2024


On 9/12/24 2:59 AM, Simon Glass wrote:
> Hi Tom,

Hello Simon,

>> How do you propose we resolve this then, Svyatoslav? I threw this patch
>> at some TI platforms as well and they're all fine. Are you unable to get
>> some early debuging information out like Marek was asking? Thanks.
> 
> At this point I would like to have an optional Kconfig to enable the
> always-on regulators in the init sequence, perhaps as part of
> initf_dm().

That would only move the current regulators_enable_boot_on() elsewhere 
without fixing the real issue which this series does address -- that the 
regulators which are marked as always-on/boot-on should always be 
enabled on boot, unconditionally. If there are regulators which should 
not be enabled on boot, they should not be marked always-on/boot-on in 
DT in the first place.

The regulators_enable_boot_on() is missing or forgotten in multiple 
board files, which makes boards randomly misbehave due to disabled 
always-on regulators. Adding a Kconfig option would convert this problem 
to "new Kconfig option is missing in multiple configs" problem, which is 
effectively identical problem, only moved elsewhere. It should be the 
core code that handles this the same way for all boards and configs.

The core has the tools for it too, the DM_FLAG_PROBE_AFTER_BIND flag 
which is already used for the same purpose for LEDs, pinctrl, PMICs, 
etc., which makes regulators_enable_boot_on() unnecessary.

The DM_FLAG_PROBE_AFTER_BIND should be used more instead of ad-hoc 
callbacks in random places of the init sequence, those do not scale.

> It should not be in DM core, sorry.
This is in regulator uclass, not in DM core ?

This discussion thread is about debugging tegra i2c, how is your comment 
related to the discussion here ?


More information about the U-Boot mailing list