• D
    regulator: core: simplify _regulator_get() · a4d7641f
    Dmitry Torokhov 提交于
    The code in _regulator_get() got a bit confusing over time, with control
    flow jumping to a label from couple of places. Let's untangle it a bit by
    doing the following:
    
    1. Make handling of missing supplies and substituting them with dummy
    regulators more explicit:
    
    - check if we not have full constraints and refuse considering dummy
      regulators with appropriate message;
    
    - use "switch (get_type)" to handle different types of request explicitly
      as well. "Normal" requests will get dummies, exclusive will not and
      will notify user about that; optional will fail silently.
    
    2. Stop jumping to a label in the middle of the function but instead have
    proper conditional flow. I believe jumps should be reserved for error
    handling, breaking from inner loop, or restarting a loop, but not for
    implementing normal conditional flow.
    Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
    Signed-off-by: NMark Brown <broonie@kernel.org>
    a4d7641f
core.c 116.7 KB