• Mark Brown's avatar
    regulator: Implement deferred disable support · da07ecd9
    Mark Brown authored
    It is a reasonably common pattern for hardware to require some delay after
    being quiesced before the disable has finalised, especially in mixed signal
    devices. For example, an active discharge may be required to ensure that
    the circuit starts up again in a known state. Avoid having to implement
    such delays in the regulator API by providing regulator_deferred_disable()
    which will do a regulator_disable() a specified number of milliseconds
    after it is called.
    
    Due to the reference counting done on regulators a deferred disable can
    be cancelled by doing another regulator_enable().
    Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
    Acked-by: default avatarLiam Girdwood <lrg@ti.com>
    da07ecd9
core.c 77.5 KB