parisc/power: Fix power soft-off button emulation on qemu
authorHelge Deller <deller@gmx.de>
Wed, 3 Jan 2024 20:17:23 +0000 (21:17 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 1 Feb 2024 00:18:52 +0000 (16:18 -0800)
commit 6472036581f947109b20664121db1d143e916f0b upstream.

Make sure to start the kthread to check the power button on qemu as
well if the power button address was provided.
This fixes the qemu built-in system_powerdown runtime command.

Fixes: d0c219472980 ("parisc/power: Add power soft-off when running on qemu")
Signed-off-by: Helge Deller <deller@gmx.de>
Cc: stable@vger.kernel.org # v6.0+
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/parisc/power.c

index 332bcc0..498bae2 100644 (file)
@@ -238,7 +238,7 @@ static int __init power_init(void)
        if (running_on_qemu && soft_power_reg)
                register_sys_off_handler(SYS_OFF_MODE_POWER_OFF, SYS_OFF_PRIO_DEFAULT,
                                        qemu_power_off, (void *)soft_power_reg);
-       else
+       if (!running_on_qemu || soft_power_reg)
                power_task = kthread_run(kpowerswd, (void*)soft_power_reg,
                                        KTHREAD_NAME);
        if (IS_ERR(power_task)) {