On Wed, Dec 13, 2017 at 10:25:00AM +0100, Maciej Purski wrote:
shared. To that end I'd adjust the code so that we always have a
coupling descriptor and then handle the case where there's only one
regulator described in there.
Do you have any suggestion, how should I implement that path? The thing which
makes it more complicated is locking, because set_voltage_unlocked is done
under one regulator's mutex and its suppliers, while balance procedure locks
every coupled regulator without its suppliers. The suppliers for a single
regulator are locked when setting a single regulator's voltage takes place.
We only really need to lock the supplies when doing the actual mechanics
of voltage changes so I'm not sure I see a big issue here - if we always
go through balancing first then voltage setting it should be fine. If
everything is always balancing (even uncoupled regulators) then part of
the transition should be moving some if not all of the data updates to
balancing.