include/linux/reboot.h | 1 - kernel/reboot.c | 16 ---------------- 2 files changed, 17 deletions(-)
From: "Dr. David Alan Gilbert" <linux@treblig.org>
unregister_platform_power_off() was added as part of 2022's
commit fb61375ecfba ("kernel/reboot: Add register_platform_power_off()")
but has remained unused.
Remove it.
Note it's a pair with register_platform_power_off() so
seems symmetric; however, I think platforms are chosen
and then stay that way for the boot - so don't
get unregistered.
Signed-off-by: Dr. David Alan Gilbert <linux@treblig.org>
---
include/linux/reboot.h | 1 -
kernel/reboot.c | 16 ----------------
2 files changed, 17 deletions(-)
diff --git a/include/linux/reboot.h b/include/linux/reboot.h
index aa08c3bbbf59..82c0a373c58c 100644
--- a/include/linux/reboot.h
+++ b/include/linux/reboot.h
@@ -161,7 +161,6 @@ int devm_register_restart_handler(struct device *dev,
void *cb_data);
int register_platform_power_off(void (*power_off)(void));
-void unregister_platform_power_off(void (*power_off)(void));
/*
* Architecture independent implemenations of sys_reboot commands.
diff --git a/kernel/reboot.c b/kernel/reboot.c
index ec087827c85c..515716afc101 100644
--- a/kernel/reboot.c
+++ b/kernel/reboot.c
@@ -626,22 +626,6 @@ int register_platform_power_off(void (*power_off)(void))
}
EXPORT_SYMBOL_GPL(register_platform_power_off);
-/**
- * unregister_platform_power_off - Unregister platform-level power-off callback
- * @power_off: Power-off callback
- *
- * Unregisters previously registered platform power-off callback.
- */
-void unregister_platform_power_off(void (*power_off)(void))
-{
- if (platform_power_off_handler &&
- platform_power_off_handler->cb_data == power_off) {
- unregister_sys_off_handler(platform_power_off_handler);
- platform_power_off_handler = NULL;
- }
-}
-EXPORT_SYMBOL_GPL(unregister_platform_power_off);
-
static int legacy_pm_power_off(struct sys_off_data *data)
{
if (pm_power_off)
--
2.49.0
Hi,
On 6/8/25 20:42, linux@treblig.org wrote:
> From: "Dr. David Alan Gilbert" <linux@treblig.org>
>
> unregister_platform_power_off() was added as part of 2022's
> commit fb61375ecfba ("kernel/reboot: Add register_platform_power_off()")
> but has remained unused.
>
> Remove it.
>
> Note it's a pair with register_platform_power_off() so
> seems symmetric; however, I think platforms are chosen
> and then stay that way for the boot - so don't
> get unregistered.
>
> Signed-off-by: Dr. David Alan Gilbert <linux@treblig.org>
> ---
> include/linux/reboot.h | 1 -
> kernel/reboot.c | 16 ----------------
> 2 files changed, 17 deletions(-)
The patches converting those platform drivers to use
register[un]_platform_power_off() haven't been sent to ML. This is the
reason this func is unused.
There were apm_32 [1], platform/iris [2], mcu_mpc8349emitx [3],
olpc-xo1-pm [4] and sgy_cts1000 [5] drivers that I had patches prepared
to convert them to new power-off API. They weren't sent out back then in
2022 because of a nontrivial dependencies between drivers. At least some
of those deps has been resolved by now and potentially the API
conversion may continue. Currently other things keep me busy and don't
have immediate plans to continue the conversion work, maybe sometime later.
Leaving it up to Rafael to decide whether to keep this func unused or
re-add later, once it actually will become needed.
[1]
https://gitlab.collabora.com/dmitry.osipenko/linux-kernel-rd/-/commit/e42f1264161085f01fed16986a23592519d9f49e
[2]
https://gitlab.collabora.com/dmitry.osipenko/linux-kernel-rd/-/commit/24cd048ad801aab6221f2b0bb4576dfc2fe25faa
[3]
https://gitlab.collabora.com/dmitry.osipenko/linux-kernel-rd/-/commit/486b69b43c47d85a0f292dca127f0b9063443a54
[4]
https://gitlab.collabora.com/dmitry.osipenko/linux-kernel-rd/-/commit/fe5344b3f8a8e1c52e1cd7108aa7e615123be4b2
[5]
https://gitlab.collabora.com/dmitry.osipenko/linux-kernel-rd/-/commit/0d761d6139c9dacbbda9f2e095577b084685603f
--
Best regards,
Dmitry
* Dmitry Osipenko (dmitry.osipenko@collabora.com) wrote:
> Hi,
>
> On 6/8/25 20:42, linux@treblig.org wrote:
> > From: "Dr. David Alan Gilbert" <linux@treblig.org>
> >
> > unregister_platform_power_off() was added as part of 2022's
> > commit fb61375ecfba ("kernel/reboot: Add register_platform_power_off()")
> > but has remained unused.
> >
> > Remove it.
> >
> > Note it's a pair with register_platform_power_off() so
> > seems symmetric; however, I think platforms are chosen
> > and then stay that way for the boot - so don't
> > get unregistered.
> >
> > Signed-off-by: Dr. David Alan Gilbert <linux@treblig.org>
> > ---
> > include/linux/reboot.h | 1 -
> > kernel/reboot.c | 16 ----------------
> > 2 files changed, 17 deletions(-)
>
> The patches converting those platform drivers to use
> register[un]_platform_power_off() haven't been sent to ML. This is the
> reason this func is unused.
Ah
> There were apm_32 [1], platform/iris [2], mcu_mpc8349emitx [3],
> olpc-xo1-pm [4] and sgy_cts1000 [5] drivers that I had patches prepared
> to convert them to new power-off API. They weren't sent out back then in
> 2022 because of a nontrivial dependencies between drivers. At least some
> of those deps has been resolved by now and potentially the API
> conversion may continue. Currently other things keep me busy and don't
> have immediate plans to continue the conversion work, maybe sometime later.
Yeh that's life!
Of course if you could upstream one to get it rolling that would
be great, but I understand.
Most of those seem pretty old platforms, what makes those
different?
> Leaving it up to Rafael to decide whether to keep this func unused or
> re-add later, once it actually will become needed.
I've copied Rafael into the thread.
Dave
> [1]
> https://gitlab.collabora.com/dmitry.osipenko/linux-kernel-rd/-/commit/e42f1264161085f01fed16986a23592519d9f49e
> [2]
> https://gitlab.collabora.com/dmitry.osipenko/linux-kernel-rd/-/commit/24cd048ad801aab6221f2b0bb4576dfc2fe25faa
> [3]
> https://gitlab.collabora.com/dmitry.osipenko/linux-kernel-rd/-/commit/486b69b43c47d85a0f292dca127f0b9063443a54
> [4]
> https://gitlab.collabora.com/dmitry.osipenko/linux-kernel-rd/-/commit/fe5344b3f8a8e1c52e1cd7108aa7e615123be4b2
> [5]
> https://gitlab.collabora.com/dmitry.osipenko/linux-kernel-rd/-/commit/0d761d6139c9dacbbda9f2e095577b084685603f
>
> --
> Best regards,
> Dmitry
--
-----Open up your eyes, open up your mind, open up your code -------
/ Dr. David Alan Gilbert | Running GNU/Linux | Happy \
\ dave @ treblig.org | | In Hex /
\ _________________________|_____ http://www.treblig.org |_______/
© 2016 - 2025 Red Hat, Inc.