Hi, On Thu, Jul 21, 2022 at 8:06 AM Mark Brown <broonie@xxxxxxxxxx> wrote: > > On Thu, Jul 21, 2022 at 07:49:55AM -0700, Doug Anderson wrote: > > > Every single LDO on Qualcomm's PMICs seems to be able to be set in > > "high power mode" and "low power mode", but I think the majority of > > clients only really care about two things: on and in high power mode > > vs. off. I think the amount of stuff peripherals can do in low power > > mode is super limited, so you have to be _really_ sure that the > > peripheral won't draw too much current without you having a chance to > > reconfigure the regulator. > > *Generally* a low power mode would be mainly useful for low power > retention type states, not active use. Right. Certainly the case I've seen where it is most useful is in S3 where we need to keep a device powered just enough to detect a wakeup, but it can definitely also be useful for mostly idle devices that we need to keep powered to retain memory so they can start up again quickly. I guess I'd put it this way, though: how many drivers in Linux today have _two_ calls to regulator_set_load(): one for the "active" state and one for the retention state. Looks like UFS maybe. Any others? For most devices the pattern is: * get all of our regulators. * for each regulator, set the load to something that will trigger HPM when we're using the regulator. * turn regulators on when we need power and off when we don't. All the extra scaffolding and tables to pass something to regulator_set_load() is just a lot of noise to add for drivers that don't have any concept of "retention" mode and don't need it. -Doug