Skip to content
  • Jonas Karlman's avatar
    power: regulator: Only run autoset once for each regulator · d99fb64a
    Jonas Karlman authored and Kever Yang's avatar Kever Yang committed
    With the commit 4fcba5d5 ("regulator: implement basic reference
    counter"), keeping regulator enablement in balance become more important.
    Calling regulator_autoset multiple times on a fixed regulator increase
    the enable count for each call, resulting in an unbalanced enable count.
    
    Introduce a AUTOSET_DONE flag and use it to mark that autoset has run
    for the regulator. Return -EALREADY on any subsequent call to autoset.
    
    This fixes so that the enable count is only ever increased by one per
    regulator for autoset.
    
    Fixes: 4fcba5d5
    
     ("regulator: implement basic reference counter")
    Signed-off-by: default avatarJonas Karlman <jonas@kwiboo.se>
    Reviewed-by: Kever Yang's avatarKever Yang <kever.yang@rock-chips.com>
    d99fb64a