diff options
author | Stafford Horne <shorne@gmail.com> | 2024-03-30 19:29:08 +0300 |
---|---|---|
committer | Stafford Horne <shorne@gmail.com> | 2024-04-15 17:20:09 +0300 |
commit | c94195a34e09dacfe2feef03602c911e82f49994 (patch) | |
tree | 6d49f40ecc8b02deb04c5ad0abbb8f452f6cec83 /arch/openrisc | |
parent | 4cece764965020c22cff7665b18a012006359095 (diff) | |
download | linux-c94195a34e09dacfe2feef03602c911e82f49994.tar.xz |
openrisc: Use do_kernel_power_off()
After commit 14c5678720bd ("power: reset: syscon-poweroff: Use
devm_register_sys_off_handler(POWER_OFF)") setting up of pm_power_off
was removed from the driver, this causes OpenRISC platforms using
syscon-poweroff to no longer shutdown.
The kernel now supports chained power-off handlers. Use
do_kernel_power_off() that invokes chained power-off handlers. All
architectures have moved away from using pm_power_off except OpenRISC.
This patch migrates openrisc to use do_kernel_power_off() instead of the
legacy pm_power_off().
Fixes: 14c5678720bd ("power: reset: syscon-poweroff: Use devm_register_sys_off_handler(POWER_OFF)")
Signed-off-by: Stafford Horne <shorne@gmail.com>
Reviewed-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Diffstat (limited to 'arch/openrisc')
-rw-r--r-- | arch/openrisc/kernel/process.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/arch/openrisc/kernel/process.c b/arch/openrisc/kernel/process.c index 86e02929f3ac..3c27d1c72718 100644 --- a/arch/openrisc/kernel/process.c +++ b/arch/openrisc/kernel/process.c @@ -65,7 +65,7 @@ void machine_restart(char *cmd) } /* - * This is used if pm_power_off has not been set by a power management + * This is used if a sys-off handler was not set by a power management * driver, in this case we can assume we are on a simulator. On * OpenRISC simulators l.nop 1 will trigger the simulator exit. */ @@ -89,10 +89,8 @@ void machine_halt(void) void machine_power_off(void) { printk(KERN_INFO "*** MACHINE POWER OFF ***\n"); - if (pm_power_off != NULL) - pm_power_off(); - else - default_power_off(); + do_kernel_power_off(); + default_power_off(); } /* |