diff options
author | Jonas Gorski <jogo@openwrt.org> | 2013-06-30 13:10:00 +0000 |
---|---|---|
committer | Jonas Gorski <jogo@openwrt.org> | 2013-06-30 13:10:00 +0000 |
commit | e7d93889d79d7ae97c70fcbb164f60f81dc10f01 (patch) | |
tree | 7bc2d16490f666f55a2e7738a1bfb004b972a10e /target/linux/brcm63xx/patches-3.9/106-MIPS-bmips-add-a-helper-function-for-registering-smp.patch | |
parent | 66f8f30f473eebdf2c36b5b4841ab23fb53726c7 (diff) | |
download | mtk-20170518-e7d93889d79d7ae97c70fcbb164f60f81dc10f01.zip mtk-20170518-e7d93889d79d7ae97c70fcbb164f60f81dc10f01.tar.gz mtk-20170518-e7d93889d79d7ae97c70fcbb164f60f81dc10f01.tar.bz2 |
bcm63xx: make smp kernels boot on older SoCs
Enhance BMIPS support so SMP kernels work on older chips.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 37099
Diffstat (limited to 'target/linux/brcm63xx/patches-3.9/106-MIPS-bmips-add-a-helper-function-for-registering-smp.patch')
-rw-r--r-- | target/linux/brcm63xx/patches-3.9/106-MIPS-bmips-add-a-helper-function-for-registering-smp.patch | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/target/linux/brcm63xx/patches-3.9/106-MIPS-bmips-add-a-helper-function-for-registering-smp.patch b/target/linux/brcm63xx/patches-3.9/106-MIPS-bmips-add-a-helper-function-for-registering-smp.patch new file mode 100644 index 0000000..ad357b6 --- /dev/null +++ b/target/linux/brcm63xx/patches-3.9/106-MIPS-bmips-add-a-helper-function-for-registering-smp.patch @@ -0,0 +1,42 @@ +From aa15ac91faccc3bf01a29670b1f9ae1945cea056 Mon Sep 17 00:00:00 2001 +From: Jonas Gorski <jogo@openwrt.org> +Date: Sun, 23 Jun 2013 14:04:51 +0200 +Subject: [PATCH 07/10] MIPS: bmips: add a helper function for registering smp + ops + +Add a helper similar to the generic register_XXX_smp_ops() for bmips. + +Signed-off-by: Jonas Gorski <jogo@openwrt.org> +--- + arch/mips/include/asm/bmips.h | 13 +++++++++++++ + 1 file changed, 13 insertions(+) + +--- a/arch/mips/include/asm/bmips.h ++++ b/arch/mips/include/asm/bmips.h +@@ -47,6 +47,7 @@ + #include <linux/cpumask.h> + #include <asm/cpu-features.h> + #include <asm/r4kcache.h> ++#include <asm/smp-ops.h> + + #define cpu_is_bmips32() (current_cpu_type() == CPU_BMIPS32) + #define cpu_is_bmips3300() (IS_ENABLED(CONFIG_CPU_BMIPS3300) && \ +@@ -59,6 +60,18 @@ + current_cpu_type() == CPU_BMIPS5000) + + extern struct plat_smp_ops bmips_smp_ops; ++ ++static inline int register_bmips_smp_ops(void) ++{ ++#ifdef CONFIG_CPU_BMIPS ++ register_smp_ops(&bmips_smp_ops); ++ ++ return 0; ++#else ++ return -ENODEV; ++#endif ++} ++ + extern char bmips_reset_nmi_vec; + extern char bmips_reset_nmi_vec_end; + extern char bmips_smp_movevec; |