1. 23 Apr, 2021 4 commits
  2. 22 Apr, 2021 1 commit
  3. 21 Apr, 2021 7 commits
  4. 02 Apr, 2021 3 commits
    • Mark Brown's avatar
      Merge series "Support ROHM BD71815 PMIC" from Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com>: · aaa8c4e0
      Mark Brown authored
      Patch series introducing support for ROHM BD71815 PMIC
      
      ROHM BD71815 is a power management IC used in some battery powered
      systems. It contains regulators, GPO(s), charger + coulomb counter, RTC
      and a clock gate.
      
      All regulators can be controlled via I2C. LDO4 can additionally be set to
      be enabled/disabled by a GPIO. LDO3 voltage could be selected from two
      voltages written into separate VSEL reisters using GPIO but this mode is
      not supported by driver. On top of that the PMIC has the typical HW
      state machine which is present also on many other ROHM PMICs.
      
      IC contains two GPOs - but one of the GPOs is marked as GND in
      data-sheet. Thus the driver by default only exposes one GPO. The second
      GPO can be enabled by special DT property.
      
      RTC is almost similar to what is on BD71828. For currently used features
      only the register address offset to RTC block differs.
      
      The charger driver is not included in this series. ROHM has a charger
      driver with some fuel-gauging logig written in but this is not included
      here. I am working on separating the logic from HW specific driver and
      supporting both BD71815 and BD71828 chargers in separate patch series.
      
      Changelog v5:
        Regulator:
        - Added regmap helper for regulator ramp-delay and taken it in use
          (patches 13, 14, 16 - they can be just dropped if ramp-delay helper is not
          a good idea. Patch 15 implements old-fashioned ramp-delay)
        GPIO:
        - styling changes to GPIO (Mostly suggested by Andy)
        - implemented init_valid_mask (but can't count on it yet)
      Changelog v4:
        - Sorted ROHM chip ID enum
        - Statcized DVS structures in regulator driver
        - Minor styling for regulator driver
        - rebased on v5.12-rc4
      Changelog v3:
        - GPIO clean-up as suggested by Bartosz
        - MFD clean-up as suggested by Lee
        - clk-mode dt-binding handling in MFD driver corrected to reflect new
          property values.
        - Dropped already applied patches
        - Rebased on v5.12-rc2
      Changelog v2:
        - Rebased on top of v5.11-rc3
        - Added another "preliminary patch" which fixes HW-dvs voltage
          handling (patch 1)
        - split regulator patch to two.
        - changed dt-binding patch ordering.
        regulators:
          - staticized probe
          - removed some unnecessary defines
          - updated comments
          - split rohm-regulator patch adding SNVS and supporting simple
            linear mapping into two - one adding support for mapping, other
            adding SNVS.
        GPIO:
          - removed unnecessary headers
          - clarified dev/parent->dev usage
          - removed forgotten #define DEBUG
        dt-bindings:
          - changed patch order to meet ref-dependencies
          - added missing regulator nodes
          - changed string property for clk mode to tristated
        MFD:
          - header cleanups.
        CLK:
          - fixed commit message
      
      --
      
      Matti Vaittinen (19):
        rtc: bd70528: Do not require parent data
        mfd: bd718x7: simplify by cleaning unnecessary device data
        dt_bindings: bd71828: Add clock output mode
        dt_bindings: regulator: Add ROHM BD71815 PMIC regulators
        dt_bindings: mfd: Add ROHM BD71815 PMIC
        mfd: Add ROHM BD71815 ID
        mfd: Sort ROHM chip ID list for better readability
        mfd: Support for ROHM BD71815 PMIC core
        gpio: support ROHM BD71815 GPOs
        regulator: helpers: Export helper voltage listing
        regulator: rohm-regulator: linear voltage support
        regulator: rohm-regulator: Support SNVS HW state.
        regulator: Add regmap helper for ramp-delay setting
        regulator: bd718x7, bd71828: Use ramp-delay helper
        regulator: Support ROHM BD71815 regulators
        regulator: bd71815: use ramp-delay helper
        clk: bd718x7: Add support for clk gate on ROHM BD71815 PMIC
        rtc: bd70528: Support RTC on ROHM BD71815
        MAINTAINERS: Add ROHM BD71815AGW
      
       .../bindings/mfd/rohm,bd71815-pmic.yaml       | 201 ++++++
       .../bindings/mfd/rohm,bd71828-pmic.yaml       |   6 +
       .../regulator/rohm,bd71815-regulator.yaml     | 116 ++++
       MAINTAINERS                                   |   3 +
       drivers/clk/clk-bd718x7.c                     |   9 +-
       drivers/gpio/Kconfig                          |  10 +
       drivers/gpio/Makefile                         |   1 +
       drivers/gpio/gpio-bd71815.c                   | 193 ++++++
       drivers/mfd/Kconfig                           |  15 +-
       drivers/mfd/rohm-bd71828.c                    | 486 +++++++++----
       drivers/mfd/rohm-bd718x7.c                    |  43 +-
       drivers/regulator/Kconfig                     |  11 +
       drivers/regulator/Makefile                    |   1 +
       drivers/regulator/bd71815-regulator.c         | 651 ++++++++++++++++++
       drivers/regulator/bd71828-regulator.c         |  51 +-
       drivers/regulator/bd718x7-regulator.c         |  60 +-
       drivers/regulator/helpers.c                   | 101 ++-
       drivers/regulator/rohm-regulator.c            |  23 +-
       drivers/rtc/Kconfig                           |   6 +-
       drivers/rtc/rtc-bd70528.c                     | 104 +--
       include/linux/mfd/rohm-bd71815.h              | 562 +++++++++++++++
       include/linux/mfd/rohm-bd71828.h              |   3 +
       include/linux/mfd/rohm-bd718x7.h              |  13 -
       include/linux/mfd/rohm-generic.h              |  15 +-
       include/linux/regulator/driver.h              |   7 +
       25 files changed, 2393 insertions(+), 298 deletions(-)
       create mode 100644 Documentation/devicetree/bindings/mfd/rohm,bd71815-pmic.yaml
       create mode 100644 Documentation/devicetree/bindings/regulator/rohm,bd71815-regulator.yaml
       create mode 100644 drivers/gpio/gpio-bd71815.c
       create mode 100644 drivers/regulator/bd71815-regulator.c
       create mode 100644 include/linux/mfd/rohm-bd71815.h
      
      base-commit: 0d02ec6b
      --
      2.25.4
      
      --
      Matti Vaittinen, Linux device drivers
      ROHM Semiconductors, Finland SWDC
      Kiviharjunlenkki 1E
      90220 OULU
      FINLAND
      
      ~~~ "I don't think so," said Rene Descartes. Just then he vanished ~~~
      Simon says - in Latin please.
      ~~~ "non cogito me" dixit Rene Descarte, deinde evanescavit ~~~
      Thanks to Simon Glass for the translation =]
      aaa8c4e0
    • Matti Vaittinen's avatar
      regulator: Add regmap helper for ramp-delay setting · fb8fee9e
      Matti Vaittinen authored
      Quite a few regulator ICs do support setting ramp-delay by writing a value
      matching the delay to a ramp-delay register.
      
      Provide a simple helper for table-based delay setting.
      Signed-off-by: default avatarMatti Vaittinen <matti.vaittinen@fi.rohmeurope.com>
      Link: https://lore.kernel.org/r/f101f1db564cf32cb58719c77af0b00d7236bb89.1617020713.git.matti.vaittinen@fi.rohmeurope.comSigned-off-by: default avatarMark Brown <broonie@kernel.org>
      fb8fee9e
    • Matti Vaittinen's avatar
      regulator: helpers: Export helper voltage listing · e3baacf5
      Matti Vaittinen authored
      Some drivers need to translate voltage values to selectors prior regulator
      registration. Currently a regulator_desc based list_voltages helper is only
      exported for regulators using the linear_ranges. Export similar helper also
      for regulators using simple linear mapping.
      Signed-off-by: default avatarMatti Vaittinen <matti.vaittinen@fi.rohmeurope.com>
      Link: https://lore.kernel.org/r/1200ef7a50c84327ada019b85f6527b4fc9b5ce1.1617020713.git.matti.vaittinen@fi.rohmeurope.comSigned-off-by: default avatarMark Brown <broonie@kernel.org>
      e3baacf5
  5. 01 Apr, 2021 4 commits
  6. 24 Mar, 2021 1 commit
  7. 21 Mar, 2021 20 commits