From: Karel Balej <balejk@xxxxxxxxx> Hello, the following implements basic support for Marvell's 88PM886 PMIC which is found for instance as a component of the samsung,coreprimevelte smartphone which inspired this and also serves as a testing platform. The code for the MFD is based primarily on this old series [1] with the addition of poweroff based on the smartphone's downstream kernel tree [2]. The onkey and regulators drivers are based on the latter. I am not in possesion of the datasheet. [1] https://lore.kernel.org/all/1434098601-3498-1-git-send-email-yizhang@xxxxxxxxxxx/ [2] https://github.com/CoderCharmander/g361f-kernel Thank you and kind regards, K. B. --- RFC v2: - Merge with the regulators series to have multiple devices and thus justify the use of the MFD framework. - Rebase on v6.8-rc3. - Reorder patches. - MFD RFC v1: https://lore.kernel.org/all/20231217131838.7569-1-karelb@xxxxxxxxxxxxxxxxxxxx/ - regulators RFC v1: https://lore.kernel.org/all/20231228100208.2932-1-karelb@xxxxxxxxxxxxxxxxxxxx/ Karel Balej (6): dt-bindings: mfd: add entry for Marvell 88PM886 PMIC mfd: add driver for Marvell 88PM886 PMIC regulator: add regulators driver for Marvell 88PM886 PMIC dt-bindings: input: add entry for Marvell 88PM88X PMICs onkey input: add onkey driver for Marvell 88PM88X PMICs MAINTAINERS: add myself for Marvell 88PM886 PMIC .../bindings/input/marvell,88pm88x-onkey.yaml | 32 +++ .../bindings/mfd/marvell,88pm88x.yaml | 82 +++++++ .../regulator/marvell,88pm88x-regulator.yaml | 28 +++ MAINTAINERS | 11 + drivers/input/misc/88pm88x-onkey.c | 95 ++++++++ drivers/input/misc/Kconfig | 7 + drivers/input/misc/Makefile | 1 + drivers/mfd/88pm88x.c | 211 ++++++++++++++++++ drivers/mfd/Kconfig | 12 + drivers/mfd/Makefile | 1 + drivers/regulator/88pm88x-regulator.c | 206 +++++++++++++++++ drivers/regulator/Kconfig | 6 + drivers/regulator/Makefile | 1 + include/linux/mfd/88pm88x.h | 46 ++++ 14 files changed, 739 insertions(+) create mode 100644 Documentation/devicetree/bindings/input/marvell,88pm88x-onkey.yaml create mode 100644 Documentation/devicetree/bindings/mfd/marvell,88pm88x.yaml create mode 100644 Documentation/devicetree/bindings/regulator/marvell,88pm88x-regulator.yaml create mode 100644 drivers/input/misc/88pm88x-onkey.c create mode 100644 drivers/mfd/88pm88x.c create mode 100644 drivers/regulator/88pm88x-regulator.c create mode 100644 include/linux/mfd/88pm88x.h -- 2.43.0