Because the uA_load propagation change takes out a lock on a regulator and
then the regulators that it supplies, it will cause deadlock with the current
regulator_enable implementation.  regulator_disable can also deadlock with
regulator_enable, but it requires two threads and precise timing to observe.
Therefore, regulator_enable must be fixed before current propagation can be
used.

Changes from v1:
        - Renamed _regulator_enable to regulator_dev_enable.
        - Made change logs more verbose.

David Collins (2):
  regulator: Remove possible deadlock from regulator_enable
  regulator: Propagate uA_load requirements up supply chain

 drivers/regulator/core.c         |  151 ++++++++++++++++++++++++++++++-------
 include/linux/regulator/driver.h |    5 +
 2 files changed, 127 insertions(+), 29 deletions(-)

-- 
Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.

--
To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to