Re: [RFC PATCH 1/4] regulator: core: Ensure the cached state matches the hardware state in regulator_set_voltage_unlocked()

From: Mark Brown
Date: Thu Jun 06 2024 - 08:05:46 EST


On Wed, Jun 05, 2024 at 08:49:33AM +0100, Prabhakar wrote:

> Driver code flow:
> 1> set regulator to 1.8V (BIT0 = 1)
> 2> Regulator cached state now will be 1.8V
> 3> Now for some reason driver issues a reset to the IP block
> which resets the registers to default value. In this process
> the regulator is set to 3.3V (BIT0 = 0)
> 4> Now the driver requests the regulator core to set 1.8V

If something is resetting the regulator like this that's a problem in
general, we need to either have the driver notify the core when that
happens so it can reconfigure the regulator or have it reapply
configuration directly. Obviously it's not great to have that happen at
all...

Attachment: signature.asc
Description: PGP signature