summaryrefslogtreecommitdiff
path: root/arch/sh/include/asm/smp.h
diff options
context:
space:
mode:
authorRich Felker <dalias@libc.org>2016-02-15 18:30:50 +0000
committerRich Felker <dalias@libc.org>2016-03-17 19:46:12 +0000
commit044b81f872169e9549b47ea2b6c94491e6d5f305 (patch)
treeafe8eac4f0a66f6890f4795d8950d8d6abc671cb /arch/sh/include/asm/smp.h
parent7480e0aabd5f9e6c3e3b72ed206e89284e90f11f (diff)
sh: add SMP method selection to device tree pseudo-board
Allow selection of plat_smp_ops based on the enable-method cpu property from device tree and provide dummy ops for booting with a device tree that does not enable SMP. Signed-off-by: Rich Felker <dalias@libc.org>
Diffstat (limited to 'arch/sh/include/asm/smp.h')
-rw-r--r--arch/sh/include/asm/smp.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/arch/sh/include/asm/smp.h b/arch/sh/include/asm/smp.h
index 78b0d0f4b24b..1baf0ba96242 100644
--- a/arch/sh/include/asm/smp.h
+++ b/arch/sh/include/asm/smp.h
@@ -69,6 +69,16 @@ static inline int hard_smp_processor_id(void)
return mp_ops->smp_processor_id();
}
+struct of_cpu_method {
+ const char *method;
+ struct plat_smp_ops *ops;
+};
+
+#define CPU_METHOD_OF_DECLARE(name, _method, _ops) \
+ static const struct of_cpu_method __cpu_method_of_table_##name \
+ __used __section(__cpu_method_of_table) \
+ = { .method = _method, .ops = _ops }
+
#else
#define hard_smp_processor_id() (0)