[PATCH v5] regulator: core: Resolve supply name earlier to prevent double-init

Christian Kohlschütter christian at kohlschutter.com
Fri Feb 17 16:01:30 PST 2023


On 18. Feb 2023, at 00:46, Saravana Kannan <saravanak at google.com> wrote:
> 
> On Fri, Feb 17, 2023 at 3:33 PM Christian Kohlschütter
> <christian at kohlschutter.com> wrote:
>> 
>> On 18. Feb 2023, at 00:22, Saravana Kannan <saravanak at google.com> wrote:
>>> 
>>> On Thu, Aug 25, 2022 at 2:28 PM Christian Kohlschütter
>>> <christian at kohlschutter.com> wrote:
>>>> 
>>>> Previously, an unresolved regulator supply reference upon calling
>>>> regulator_register on an always-on or boot-on regulator caused
>>>> set_machine_constraints to be called twice.
>>>> 
>>>> This in turn may initialize the regulator twice, leading to voltage
>>>> glitches that are timing-dependent. A simple, unrelated configuration
>>>> change may be enough to hide this problem, only to be surfaced by
>>>> chance.
>>> 
>>> In your case, can you elaborate which part of the constraints/init
>>> twice caused the issue?
>>> 
>>> I'm trying to simplify some of the supply resolving code and I'm
>>> trying to not break your use case.
>>> 
>>> -Saravana
>> 
>> Here's a write-up of my use case, and how we got to the solution:
>> https://kohlschuetter.github.io/blog/posts/2022/10/28/linux-nanopi-r4s/
> 
> I did read the write up before I sent my request. I'm asking for
> specifics on which functions in the set_machine_constraints() was
> causing the issue. And it's also a bit unclear to me if the issue was
> with having stuff called twice on the alway-on regulator or the
> supply.
> 
> -Saravana

I'm afraid I cannot give a more detailed answer than what's in the write up and the previous discussion on this mailing list; I thought it's pretty detailed already.

However, it should be relatively straightforward to reproduce the issue.




More information about the Linux-rockchip mailing list