linux/drivers/power/reset
André Draszik 8c7cf0fc8c power: reset: syscon-reboot: add gs101-specific reset
Linux supports a couple different reset modes, but this driver here
doesn't distinguish between them and issues the same syscon register
write irrespective of the reset mode requested by the kernel.

Since DTs should not encode register writes (see e.g. [1]), update this
driver to support different reset modes based on DT compatible match.

At the same time, add support for Google GS101, which does support
cold, hard, warm, and soft.

As an example why this is useful, other than properly supporting the
Linux reboot= kernel command line option or sysfs entry, this change
allows gs101-platforms to default to a more secure cold-reset, but also
to warm-reset in case RAM contents needs to be retained across the
reset.

Link: https://lore.kernel.org/all/20250227132644.GA1924628-robh@kernel.org/ [1]
Signed-off-by: André Draszik <andre.draszik@linaro.org>
Link: https://lore.kernel.org/r/20250401-syscon-reboot-reset-mode-v5-2-5b9357442363@linaro.org
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
2025-05-01 00:41:31 +02:00
..
Kconfig power: reset: add Toradex Embedded Controller 2025-04-29 01:13:10 +02:00
Makefile power: reset: add Toradex Embedded Controller 2025-04-29 01:13:10 +02:00
arm-versatile-reboot.c
as3722-poweroff.c power: reset: as3722-poweroff: Remove unnecessary return in as3722_poweroff_probe 2024-12-19 00:38:11 +01:00
at91-poweroff.c power: Switch back to struct platform_driver::remove() 2024-10-21 15:51:42 +02:00
at91-reset.c power: reset: at91-reset: Optimize at91_reset() 2025-04-27 23:59:08 +02:00
at91-sama5d2_shdwc.c power: reset: at91-sama5d2_shdwc: Add sama7d65 PMC 2025-03-08 01:36:33 +01:00
atc260x-poweroff.c
axxia-reset.c
brcm-kona-reset.c
brcmstb-reboot.c
ep93xx-restart.c
gemini-poweroff.c
gpio-poweroff.c power: reset: gpio-poweroff: Clarify the warning message 2024-12-12 23:34:50 +01:00
gpio-restart.c
hisi-reboot.c
keystone-reset.c power: reset: keystone: Use syscon_regmap_lookup_by_phandle_args 2025-01-15 21:51:39 +01:00
linkstation-poweroff.c
ltc2952-poweroff.c power: reset: ltc2952-poweroff: Switch to use hrtimer_setup() 2025-02-18 11:19:04 +01:00
msm-poweroff.c
mt6323-poweroff.c
nvmem-reboot-mode.c
ocelot-reset.c
odroid-go-ultra-poweroff.c
piix4-poweroff.c
pwr-mlxbf.c
qcom-pon.c
qnap-poweroff.c power: Switch back to struct platform_driver::remove() 2024-10-21 15:51:42 +02:00
reboot-mode.c power: reset: reboot-mode: better compatibility with DT (replace ' ,/') 2025-04-28 00:05:31 +02:00
regulator-poweroff.c
restart-poweroff.c
rmobile-reset.c
sc27xx-poweroff.c
st-poweroff.c
syscon-poweroff.c
syscon-reboot-mode.c
syscon-reboot.c power: reset: syscon-reboot: add gs101-specific reset 2025-05-01 00:41:31 +02:00
tdx-ec-poweroff.c power: reset: add Toradex Embedded Controller 2025-04-29 01:13:10 +02:00
tps65086-restart.c
vexpress-poweroff.c
xgene-reboot.c