1. 23 Nov, 2022 9 commits
  2. 22 Nov, 2022 13 commits
  3. 18 Nov, 2022 2 commits
  4. 16 Nov, 2022 3 commits
  5. 15 Nov, 2022 1 commit
  6. 14 Nov, 2022 1 commit
  7. 10 Nov, 2022 1 commit
  8. 09 Nov, 2022 2 commits
  9. 03 Nov, 2022 4 commits
    • Mark Brown's avatar
      regulator: Add DT support for regulator-output connectors · 3078d0c3
      Mark Brown authored
      Merge series from Zev Weiss <zev@bewilderbeest.net>:
      
      This series adds support for userspace-controlled regulator-supplied
      power outputs [2].  This is an important feature for some kinds of BMC
      (baseboard management controller) systems where the BMC provides an
      operator with manual control of a set of DC power outputs.
      
      As in a broadly similar patchset that was recently almost merged [0],
      this takes the approach of providing support by extending the existing
      userspace-consumer regulator driver.  A couple questions about the
      userspace-consumer driver came up along the way, however.
      
      First, how (if at all) is it currently being used?  It appears the
      last in-tree use of it was removed a bit over two years ago in commit
      9d323914 ("ARM: pxa: remove Compulab pxa2xx boards").  Aside from
      just adding DT support I've made a couple small tweaks to the driver
      in patch 3 that I hope are compatible with any current usage, but
      without any extant examples to look at it's kind of hard to say.
      
      Second, how critical is its support for controlling multiple
      regulators?  (i.e. its use of regulator_bulk_data and friends instead
      of a single struct regulator.)  As far as I can see every in-tree use
      of it that's ever existed has used num_supplies = 1.  If it's not
      important to retain, patch 1 of this series could be supplanted by one
      that instead simplifies the driver slightly by removing that
      functionality.
      
      The DT binding added in patch 2 is essentially identical to one I
      posted in a previous patchset that had an R-B from Rob [1], but has
      had some minor rewording and been moved from the extcon subsystem to
      the regulator subsystem.
      3078d0c3
    • Zev Weiss's avatar
      regulator: userspace-consumer: Handle regulator-output DT nodes · 5c51d4af
      Zev Weiss authored
      In addition to adding some fairly simple OF support code, we make some
      slight adjustments to the userspace-consumer driver to properly
      support use with regulator-output hardware:
      
       - We now do an exclusive get of the supply regulators so as to
         prevent regulator_init_complete_work from automatically disabling
         them.
      
       - Instead of assuming that the supply is initially disabled, we now
         query its state to determine the initial value of drvdata->enabled.
      Signed-off-by: default avatarZev Weiss <zev@bewilderbeest.net>
      Link: https://lore.kernel.org/r/20221031233704.22575-4-zev@bewilderbeest.netSigned-off-by: default avatarMark Brown <broonie@kernel.org>
      5c51d4af
    • Zev Weiss's avatar
      regulator: Add regulator-output binding · 14b8ad4c
      Zev Weiss authored
      This describes a power output supplied by a regulator, such as a
      power outlet on a power distribution unit (PDU).
      Signed-off-by: default avatarZev Weiss <zev@bewilderbeest.net>
      Reviewed-by: default avatarRob Herring <robh@kernel.org>
      Link: https://lore.kernel.org/r/20221031233704.22575-3-zev@bewilderbeest.netSigned-off-by: default avatarMark Brown <broonie@kernel.org>
      14b8ad4c
    • Zev Weiss's avatar
      regulator: devres: Add devm_regulator_bulk_get_exclusive() · fd184506
      Zev Weiss authored
      We had an exclusive variant of the devm_regulator_get() API, but no
      corresponding variant for the bulk API; let's add one now.  We add a
      generalized version of the existing regulator_bulk_get() function that
      additionally takes a get_type parameter and redefine
      regulator_bulk_get() in terms of it, then do similarly with
      devm_regulator_bulk_get(), and finally add the new
      devm_regulator_bulk_get_exclusive().
      Signed-off-by: default avatarZev Weiss <zev@bewilderbeest.net>
      Link: https://lore.kernel.org/r/20221031233704.22575-2-zev@bewilderbeest.netSigned-off-by: default avatarMark Brown <broonie@kernel.org>
      fd184506
  10. 02 Nov, 2022 4 commits