From: Magnus Damm <magnus.damm@gmail.com>
To: linux-sh@vger.kernel.org
Cc: mark.rutland@arm.com, devicetree@vger.kernel.org,
lorenzo.pieralisi@arm.com, keita.kobayashi.ym@renesas.com,
horms@verge.net.au, geert@linux-m68k.org,
laurent.pinchart@ideasonboard.com,
Magnus Damm <magnus.damm@gmail.com>
Subject: [PATCH v2 05/07] ARM: shmobile: Add function to prioritize DT SMP
Date: Sun, 23 Aug 2015 07:25:21 +0000 [thread overview]
Message-ID: <20150823072521.14156.35151.sendpatchset@little-apple> (raw)
In-Reply-To: <20150823072427.14156.1960.sendpatchset@little-apple>
From: Magnus Damm <damm+renesas@opensource.se>
Add a function to check if other DT based method is available, and
if so return false to not hook up smp_ops from the machine vector.
This results in that DT-based SMP support has priority over older
C-based smp_ops code, and in case DT-based SMP support code does not
exist in the DTB then the old smp_ops code will still work as-is.
Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
---
Changes since V1:
- Reworked r8a7791-specific version to become reusable function.
arch/arm/mach-shmobile/common.h | 1 +
arch/arm/mach-shmobile/platsmp.c | 7 +++++++
2 files changed, 8 insertions(+)
--- 0001/arch/arm/mach-shmobile/common.h
+++ work/arch/arm/mach-shmobile/common.h 2015-08-23 15:26:18.722366518 +0900
@@ -11,6 +11,7 @@ extern void shmobile_smp_sleep(void);
extern void shmobile_smp_hook(unsigned int cpu, unsigned long fn,
unsigned long arg);
extern bool shmobile_smp_cpu_can_disable(unsigned int cpu);
+extern bool shmobile_smp_init_fallback_ops(void);
extern void shmobile_boot_scu(void);
extern void shmobile_smp_scu_prepare_cpus(unsigned int max_cpus);
extern void shmobile_smp_scu_cpu_die(unsigned int cpu);
--- 0001/arch/arm/mach-shmobile/platsmp.c
+++ work/arch/arm/mach-shmobile/platsmp.c 2015-08-23 15:26:13.692366518 +0900
@@ -36,3 +36,10 @@ bool shmobile_smp_cpu_can_disable(unsign
return true; /* Hotplug of any CPU is supported */
}
#endif
+
+bool __init shmobile_smp_init_fallback_ops(void)
+{
+ /* fallback on PSCI/smp_ops if no other DT based method is detected */
+ return platform_can_secondary_boot() ? true : false;
+}
+
WARNING: multiple messages have this Message-ID (diff)
From: Magnus Damm <magnus.damm@gmail.com>
To: linux-sh@vger.kernel.org
Cc: mark.rutland@arm.com, devicetree@vger.kernel.org,
lorenzo.pieralisi@arm.com, keita.kobayashi.ym@renesas.com,
horms@verge.net.au, geert@linux-m68k.org,
laurent.pinchart@ideasonboard.com,
Magnus Damm <magnus.damm@gmail.com>
Subject: [PATCH v2 05/07] ARM: shmobile: Add function to prioritize DT SMP
Date: Sun, 23 Aug 2015 16:25:21 +0900 [thread overview]
Message-ID: <20150823072521.14156.35151.sendpatchset@little-apple> (raw)
In-Reply-To: <20150823072427.14156.1960.sendpatchset@little-apple>
From: Magnus Damm <damm+renesas@opensource.se>
Add a function to check if other DT based method is available, and
if so return false to not hook up smp_ops from the machine vector.
This results in that DT-based SMP support has priority over older
C-based smp_ops code, and in case DT-based SMP support code does not
exist in the DTB then the old smp_ops code will still work as-is.
Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
---
Changes since V1:
- Reworked r8a7791-specific version to become reusable function.
arch/arm/mach-shmobile/common.h | 1 +
arch/arm/mach-shmobile/platsmp.c | 7 +++++++
2 files changed, 8 insertions(+)
--- 0001/arch/arm/mach-shmobile/common.h
+++ work/arch/arm/mach-shmobile/common.h 2015-08-23 15:26:18.722366518 +0900
@@ -11,6 +11,7 @@ extern void shmobile_smp_sleep(void);
extern void shmobile_smp_hook(unsigned int cpu, unsigned long fn,
unsigned long arg);
extern bool shmobile_smp_cpu_can_disable(unsigned int cpu);
+extern bool shmobile_smp_init_fallback_ops(void);
extern void shmobile_boot_scu(void);
extern void shmobile_smp_scu_prepare_cpus(unsigned int max_cpus);
extern void shmobile_smp_scu_cpu_die(unsigned int cpu);
--- 0001/arch/arm/mach-shmobile/platsmp.c
+++ work/arch/arm/mach-shmobile/platsmp.c 2015-08-23 15:26:13.692366518 +0900
@@ -36,3 +36,10 @@ bool shmobile_smp_cpu_can_disable(unsign
return true; /* Hotplug of any CPU is supported */
}
#endif
+
+bool __init shmobile_smp_init_fallback_ops(void)
+{
+ /* fallback on PSCI/smp_ops if no other DT based method is detected */
+ return platform_can_secondary_boot() ? true : false;
+}
+
next prev parent reply other threads:[~2015-08-23 7:25 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-23 7:24 [PATCH v2 00/07] ARM: shmobile: APMU DT support via SMP Enable method V2 Magnus Damm
2015-08-23 7:24 ` Magnus Damm
2015-08-23 7:24 ` [PATCH v2 01/07] devicetree: bindings: Renesas APMU and SMP Enable method Magnus Damm
2015-08-23 7:24 ` Magnus Damm
2015-08-24 7:30 ` Geert Uytterhoeven
2015-08-24 7:30 ` Geert Uytterhoeven
2015-08-24 18:25 ` Laurent Pinchart
2015-08-24 18:25 ` Laurent Pinchart
2015-08-25 4:11 ` Magnus Damm
2015-08-25 4:11 ` Magnus Damm
2015-08-25 7:07 ` Geert Uytterhoeven
2015-08-25 7:07 ` Geert Uytterhoeven
2015-08-23 7:24 ` [PATCH v2 02/07] ARM: shmobile: Add APMU DT support via " Magnus Damm
2015-08-23 7:24 ` Magnus Damm
2015-08-23 7:25 ` [PATCH v2 03/07] ARM: shmobile: Add APMU nodes to r8a7790 DTSI Magnus Damm
2015-08-23 7:25 ` Magnus Damm
2015-08-24 18:29 ` Laurent Pinchart
2015-08-24 18:29 ` Laurent Pinchart
2015-08-25 4:13 ` Magnus Damm
2015-08-25 4:13 ` Magnus Damm
2015-08-25 5:50 ` Laurent Pinchart
2015-08-25 5:50 ` Laurent Pinchart
2015-08-23 7:25 ` [PATCH v2 04/07] ARM: shmobile: Add APMU nodes to r8a7791 DTSI Magnus Damm
2015-08-23 7:25 ` Magnus Damm
2015-08-23 7:25 ` Magnus Damm [this message]
2015-08-23 7:25 ` [PATCH v2 05/07] ARM: shmobile: Add function to prioritize DT SMP Magnus Damm
2015-08-23 7:25 ` [PATCH v2 06/07] ARM: shmobile: Prioritize r8a7790 DT APMU support Magnus Damm
2015-08-23 7:25 ` Magnus Damm
2015-08-23 7:25 ` [PATCH v2 07/07] ARM: shmobile: Prioritize r8a7791 " Magnus Damm
2015-08-23 7:25 ` Magnus Damm
2015-08-25 0:49 ` [PATCH v2 00/07] ARM: shmobile: APMU DT support via SMP Enable method V2 Simon Horman
2015-08-25 0:49 ` Simon Horman
2015-08-25 4:09 ` Magnus Damm
2015-08-25 4:09 ` Magnus Damm
[not found] ` <CANqRtoQzpNSr8dWRvGmS_VWBEsi-=dB6PUGVzWQHAXK6xb2f2A-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-08-26 5:28 ` Simon Horman
2015-08-26 5:28 ` Simon Horman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20150823072521.14156.35151.sendpatchset@little-apple \
--to=magnus.damm@gmail.com \
--cc=devicetree@vger.kernel.org \
--cc=geert@linux-m68k.org \
--cc=horms@verge.net.au \
--cc=keita.kobayashi.ym@renesas.com \
--cc=laurent.pinchart@ideasonboard.com \
--cc=linux-sh@vger.kernel.org \
--cc=lorenzo.pieralisi@arm.com \
--cc=mark.rutland@arm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.