[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <fadd883957d4283d3149f00ade8e7a7d3fc912b6.1583740881.git.baolin.wang7@gmail.com>
Date:   Mon,  9 Mar 2020 16:18:45 +0800
From:   Baolin Wang <baolin.wang7@...il.com>
To:     sre@...nel.org
Cc:     baolin.wang7@...il.com, orsonzhai@...il.com, zhang.lyra@...il.com,
        kernel-team@...roid.com, linux-pm@...r.kernel.org,
        linux-kernel@...r.kernel.org
Subject: [PATCH 2/3] power: reset: sc27xx: Change to use cpu_down()
To allow the SC27XX driver can be built as a module, and the
freeze_secondary_cpus() symbol is not exported, thus we can change
to use the exported cpu_down() API to shut down other cpus to avoid
racing, which is same as the freeze_secondary_cpus().
Signed-off-by: Baolin Wang <baolin.wang7@...il.com>
---
 drivers/power/reset/sc27xx-poweroff.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/drivers/power/reset/sc27xx-poweroff.c b/drivers/power/reset/sc27xx-poweroff.c
index 2bedd4c..91b5ece 100644
--- a/drivers/power/reset/sc27xx-poweroff.c
+++ b/drivers/power/reset/sc27xx-poweroff.c
@@ -29,10 +29,13 @@
  */
 static void sc27xx_poweroff_shutdown(void)
 {
-#ifdef CONFIG_PM_SLEEP_SMP
-	int cpu = smp_processor_id();
+#ifdef CONFIG_HOTPLUG_CPU
+	int cpu;
 
-	freeze_secondary_cpus(cpu);
+	for_each_online_cpu(cpu) {
+		if (cpu != smp_processor_id())
+			cpu_down(cpu);
+	}
 #endif
 }
 
-- 
1.9.1
Powered by blists - more mailing lists