mbox series

[00/33] Add driver for HiSilicon SPMI PMIC for Hikey 970

Message ID cover.1597160086.git.mchehab+huawei@kernel.org
Headers show
Series Add driver for HiSilicon SPMI PMIC for Hikey 970 | expand

Message

Mauro Carvalho Chehab Aug. 11, 2020, 3:41 p.m. UTC
The Hikey 970 board uses a different PMIC than the one found on Hikey 960.

This PMIC uses a SPMI board.

This patch series backport the OOT drivers from the Linaro's official
tree for this board:

	https://github.com/96boards-hikey/linux/tree/hikey970-v4.9
	
Porting them to upstream, cleaning up coding style issues, solving
driver probing order and adding DT documentation.

I opted to not fold all patches into a single one, in order to:

- Preserve the authorship of the original authors;
- Keep a history of changes.

As this could be harder for people to review, I'll be replying to patch 00/32
with all patches folded. This should help reviewers to see the current
code after the entire series is applied.

Mauro Carvalho Chehab (32):
  spmi: get rid of a warning when built with W=1
  spmi: hisi-spmi-controller: coding style fixup
  mfd, regulator: get rid of unused code at HiSilicon SPMI PMIC
  regulator: hisi_regulator_spmi: port it to upstream
  mfd: hisi_pmic_spmi: deal with non-static functions
  mfd: hisi_pmic_spmi: get rid of the static vars
  spmi: hisi-spmi-controller: fix it to probe successfully
  spmi: hisi-spmi-controller: fix a typo
  spmi: hisi-spmi-controller: adjust whitespaces at defines
  spmi: hisi-spmi-controller: use le32 macros where needed
  spmi: hisi-spmi-controller: add debug when values are read/write
  mfd, regulator: coding style fixups at the HiSilicon SPMI PMIC code
  spmi: add hisi-spmi-controller to the building system
  mfd: Kconfig: fix a typo
  spmi: hisi-spmi-controller: fix the dev_foo() logic
  mfd: pmic: add drivers for hi6421v600
  mfd: hi6421-spmi-pmic: get rid of unused OF properties
  spmi: hi6421-spmi-pmic: cleanup OF properties
  regulator: hi6421v600-regulator: cleanup struct hisi_regulator
  regulator: hi6421v600-regulator: cleanup debug messages
  regulator: hi6421v600-regulator: use shorter names for OF properties
  regulator: hi6421v600-regulator: better handle modes
  regulator, mfd: change namespace for HiSilicon SPMI PMIC drivers
  regulator: hi6421v600-regulator:  convert to use get/set voltage_sel
  regulator: hi6421v600-regulator: don't use usleep_range for
    off_on_delay
  regulator: hi6421v600-regulator: add a driver-specific debug macro
  regulator: hi6421v600-regulator: initialize ramp_delay
  regulator: hi6421v600-regulator: cleanup DT settings
  mfd, spmi, regulator: fix some coding style issues at HiSilicon SPMI
    PMIC
  dt: document HiSilicon SPMI controller and mfd/regulator properties
  dt: hisilicon: add support for the PMIC found on Hikey 970
  MAINTAINERS: add an entry for HiSilicon 6421v600 drivers

Mayulong (1):
  spmi, regulator, mfd: add drivers for hikey970 SPMI PMIC

 .../mfd/hisilicon,hi6421-spmi-pmic.yaml       | 175 +++++++
 .../spmi/hisilicon,hisi-spmi-controller.yaml  |  54 ++
 MAINTAINERS                                   |   8 +
 .../boot/dts/hisilicon/hi3670-hikey970.dts    |  16 +-
 .../boot/dts/hisilicon/hikey970-pmic.dtsi     | 200 +++++++
 drivers/mfd/Kconfig                           |  17 +-
 drivers/mfd/Makefile                          |   1 +
 drivers/mfd/hi6421-spmi-pmic.c                | 399 ++++++++++++++
 drivers/regulator/Kconfig                     |   8 +
 drivers/regulator/Makefile                    |   1 +
 drivers/regulator/hi6421v600-regulator.c      | 493 ++++++++++++++++++
 drivers/spmi/Kconfig                          |   9 +
 drivers/spmi/Makefile                         |   2 +
 drivers/spmi/hisi-spmi-controller.c           | 384 ++++++++++++++
 drivers/spmi/spmi.c                           |  10 +-
 include/linux/mfd/hi6421-spmi-pmic.h          |  67 +++
 16 files changed, 1826 insertions(+), 18 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/mfd/hisilicon,hi6421-spmi-pmic.yaml
 create mode 100644 Documentation/devicetree/bindings/spmi/hisilicon,hisi-spmi-controller.yaml
 create mode 100644 arch/arm64/boot/dts/hisilicon/hikey970-pmic.dtsi
 create mode 100644 drivers/mfd/hi6421-spmi-pmic.c
 create mode 100644 drivers/regulator/hi6421v600-regulator.c
 create mode 100644 drivers/spmi/hisi-spmi-controller.c
 create mode 100644 include/linux/mfd/hi6421-spmi-pmic.h