msm: pil-q6v5: Fix vdd_cx proxy vote use of regulator APIs

It is not sufficient for a client to simply call regulator_disable()
when it wants to de-assert its votes for a regulator. Even after this
call, if a voltage or current request remains, it will be included in
the regulator framework's aggregation if any other client enables the
regulator. Put another way, regulator state (enable/disable) requests
are orthogonal to current requests and voltage requests.

Fix proxy voting to only request a vdd_cx current and voltage at the
time the regulator is enabled. When disabling the regulator, drop the
current/voltage requests.

This allows vdd_cx to scale normally, except while the proxy votes are
asserted.

Change-Id: I19d223b442dacc584ae23e9aac61630427302a61
Signed-off-by: Matt Wagantall <mattw@codeaurora.org>
1 file changed