[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20251007-sc27xx-mfd-poweroff-v1-0-89a2f919b731@abscue.de>
Date: Tue, 07 Oct 2025 20:14:18 +0200
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>
Subject: [PATCH 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>
---
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 | 152 ++++++++++++++++++++++++++++++++++
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, 153 insertions(+), 161 deletions(-)
---
base-commit: 68842969e138d9ad3e3aa2bbd65d514df1581b5c
change-id: 20251007-sc27xx-mfd-poweroff-9cf728d55fed
Best regards,
--
Otto Pflüger <otto.pflueger@...cue.de>
Powered by blists - more mailing lists