Thread (1 message) flat view 1 message, 1 author, 2020-08-05

Re: [PATCH v3 1/2] firmware: psci: call pm_set_suspend_via_firmware()

From: Geert Uytterhoeven <geert@linux-m68k.org>
Date: 2020-08-05 08:09:50
Also in: linux-mmc, linux-pm, linux-renesas-soc

Hi Shimoda-san,

CC linux-pm

On Mon, Jun 22, 2020 at 4:25 AM Yoshihiro Shimoda
[off-list ref] wrote:
Call pm_set_suspend_via_firmware() in .begin() of psci_suspend_ops
to use pm_suspend_via_firmware() on PSCI environment.

Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Thanks for your patch!

While [PATCH v3 2/2] has been rejected, and a different solution (DT
property "full-pwr-cycle-in-suspend") was accepted, I think this patch
has merits on its own: it makes sure pm_suspend_global_flags contains
the correct state not only for systems using ACPI, but also for PSCI.
quoted hunk
--- a/drivers/firmware/psci/psci.c
+++ b/drivers/firmware/psci/psci.c
@@ -309,6 +309,13 @@ static int psci_system_suspend(unsigned long unused)
                              __pa_symbol(cpu_resume), 0, 0);
 }

+static int psci_system_suspend_begin(suspend_state_t state)
+{
+       pm_set_suspend_via_firmware();
+
+       return 0;
+}
+
 static int psci_system_suspend_enter(suspend_state_t state)
 {
Shouldn't you add a call to pm_set_resume_via_firmware() here?
quoted hunk
        return cpu_suspend(0, psci_system_suspend);
@@ -316,6 +323,7 @@ static int psci_system_suspend_enter(suspend_state_t state)

 static const struct platform_suspend_ops psci_suspend_ops = {
        .valid          = suspend_valid_only_mem,
+       .begin          = psci_system_suspend_begin,
        .enter          = psci_system_suspend_enter,
 };
Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help