[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20251110-sc27xx-mfd-poweroff-v2-0-fd5842e732fe@abscue.de>
Date: Mon, 10 Nov 2025 20:08:57 +0100
From: Otto Pflüger <otto.pflueger@...cue.de>
To: Lee Jones <lee@...nel.org>, Orson Zhai <orsonzhai@...il.com>,
Baolin Wang <baolin.wang@...ux.alibaba.com>,
Chunyan Zhang <zhang.lyra@...il.com>, Mark Brown <broonie@...nel.org>,
Sebastian Reichel <sre@...nel.org>
Cc: Rob Herring <robh@...nel.org>, linux-kernel@...r.kernel.org,
linux-spi@...r.kernel.org, linux-pm@...r.kernel.org,
Otto Pflüger <otto.pflueger@...cue.de>,
Sebastian Reichel <sebastian.reichel@...labora.com>
Subject: [PATCH v2 0/3] mfd: sprd-sc27xx: Move poweroff/reboot support to
the parent MFD driver
Registers for powering off the system are present in all SC27xx-series
PMICs, although their locations vary between the specific PMIC models.
On systems using these chips, the PMIC can always power off the system
and is usually the only chip capable of doing this. Similarly, the PMICs
(except for SC2731) contain a reset register that can always be used to
restart the system.
There is an existing sc27xx-poweroff driver, but it currently only works
on SC2731 and is not probed anywhere since it is missing an OF match
table and is not instantiated by the MFD driver. Reboot for SC2731 is
implemented in drivers/spi/spi-sprd-adi.c, which is not really an
appropriate location for PMIC-specific code.
Since a separate device tree node for the poweroff support would not
provide anything useful (see [1]) and passing platform-specific data
between drivers is unnecessarily complex for such a simple feature,
reimplement the poweroff functionality in the main MFD driver. While at
it, add support for the newer SC2730 PMIC and its hardware reset
register.
Reboot is special because it requires storing the reboot mode. Move the
existing code for this from the SPI bus driver to the MFD driver.
[1]: https://lore.kernel.org/all/20251002025344.GA2958334-robh@kernel.org/
Signed-off-by: Otto Pflüger <otto.pflueger@...cue.de>
---
Changes in v2:
- Fix style issues in MFD driver
- Use dev_err instead of pr_emerg
- Link to v1: https://lore.kernel.org/r/20251007-sc27xx-mfd-poweroff-v1-0-89a2f919b731@abscue.de
---
Otto Pflüger (3):
mfd: sprd-sc27xx: Integrate power off and reboot support
spi: sprd-adi: Remove code for storing the reboot mode
power: reset: sc27xx: Drop unused driver
drivers/mfd/sprd-sc27xx-spi.c | 148 ++++++++++++++++++++++++++++++++++
drivers/power/reset/Kconfig | 9 ---
drivers/power/reset/Makefile | 1 -
drivers/power/reset/sc27xx-poweroff.c | 79 ------------------
drivers/spi/spi-sprd-adi.c | 73 +----------------
5 files changed, 149 insertions(+), 161 deletions(-)
---
base-commit: ab40c92c74c6b0c611c89516794502b3a3173966
change-id: 20251007-sc27xx-mfd-poweroff-9cf728d55fed
Best regards,
--
Otto Pflüger <otto.pflueger@...cue.de>
Powered by blists - more mailing lists