]> www.infradead.org Git - users/hch/misc.git/commitdiff
riscv: sbi: Switch to new sys-off handler API
authorAndrew Davis <afd@ti.com>
Wed, 13 Aug 2025 15:18:55 +0000 (10:18 -0500)
committerPaul Walmsley <pjw@kernel.org>
Thu, 18 Sep 2025 23:48:04 +0000 (17:48 -0600)
Kernel now supports chained power-off handlers. Use
register_platform_power_off() that registers a platform level power-off
handler. Legacy pm_power_off() will be removed once all drivers and archs
are converted to the new sys-off API.

Signed-off-by: Andrew Davis <afd@ti.com>
Tested-by: Alexandre Ghiti <alexghiti@rivosinc.com>
Reviewed-by: Alexandre Ghiti <alexghiti@rivosinc.com>
Link: https://lore.kernel.org/r/20250813151855.105237-1-afd@ti.com
Signed-off-by: Paul Walmsley <pjw@kernel.org>
arch/riscv/kernel/sbi.c

index 53836a9235e320a35bb5ef04e1f39926d753e438..5e8cde055264351c0877f6bc4e647bcb6643f40d 100644 (file)
@@ -148,7 +148,7 @@ static int __sbi_rfence_v01(int fid, const struct cpumask *cpu_mask,
 
 static void sbi_set_power_off(void)
 {
-       pm_power_off = sbi_shutdown;
+       register_platform_power_off(sbi_shutdown);
 }
 #else
 static void __sbi_set_timer_v01(uint64_t stime_value)
@@ -682,7 +682,7 @@ void __init sbi_init(void)
                if (sbi_spec_version >= sbi_mk_version(0, 3) &&
                    sbi_probe_extension(SBI_EXT_SRST)) {
                        pr_info("SBI SRST extension detected\n");
-                       pm_power_off = sbi_srst_power_off;
+                       register_platform_power_off(sbi_srst_power_off);
                        sbi_srst_reboot_nb.notifier_call = sbi_srst_reboot;
                        sbi_srst_reboot_nb.priority = 192;
                        register_restart_handler(&sbi_srst_reboot_nb);