aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/brcm63xx/patches-3.9/102-MIPS-bmips-add-macros-for-testing-the-current-bmips-.patch
diff options
context:
space:
mode:
authorJonas Gorski <jogo@openwrt.org>2013-06-30 13:10:00 +0000
committerJonas Gorski <jogo@openwrt.org>2013-06-30 13:10:00 +0000
commite7d93889d79d7ae97c70fcbb164f60f81dc10f01 (patch)
tree7bc2d16490f666f55a2e7738a1bfb004b972a10e /target/linux/brcm63xx/patches-3.9/102-MIPS-bmips-add-macros-for-testing-the-current-bmips-.patch
parent66f8f30f473eebdf2c36b5b4841ab23fb53726c7 (diff)
downloadupstream-e7d93889d79d7ae97c70fcbb164f60f81dc10f01.tar.gz
upstream-e7d93889d79d7ae97c70fcbb164f60f81dc10f01.tar.bz2
upstream-e7d93889d79d7ae97c70fcbb164f60f81dc10f01.zip
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/102-MIPS-bmips-add-macros-for-testing-the-current-bmips-.patch')
-rw-r--r--target/linux/brcm63xx/patches-3.9/102-MIPS-bmips-add-macros-for-testing-the-current-bmips-.patch36
1 files changed, 36 insertions, 0 deletions
diff --git a/target/linux/brcm63xx/patches-3.9/102-MIPS-bmips-add-macros-for-testing-the-current-bmips-.patch b/target/linux/brcm63xx/patches-3.9/102-MIPS-bmips-add-macros-for-testing-the-current-bmips-.patch
new file mode 100644
index 0000000000..af38b35689
--- /dev/null
+++ b/target/linux/brcm63xx/patches-3.9/102-MIPS-bmips-add-macros-for-testing-the-current-bmips-.patch
@@ -0,0 +1,36 @@
+From 971b8b3d5101b3bb868e63f3eb96fe69b7110c61 Mon Sep 17 00:00:00 2001
+From: Jonas Gorski <jogo@openwrt.org>
+Date: Thu, 27 Jun 2013 12:40:15 +0200
+Subject: [PATCH 03/10] MIPS: bmips: add macros for testing the current bmips
+ CPU
+
+Makes it easy to make code conditionally compiled for supported CPUs
+without directly relying on #ifdefs.
+
+Signed-off-by: Jonas Gorski <jogo@openwrt.org>
+---
+ arch/mips/include/asm/bmips.h | 11 +++++++++++
+ 1 file changed, 11 insertions(+)
+
+--- a/arch/mips/include/asm/bmips.h
++++ b/arch/mips/include/asm/bmips.h
+@@ -45,8 +45,19 @@
+ #if !defined(__ASSEMBLY__)
+
+ #include <linux/cpumask.h>
++#include <asm/cpu-features.h>
+ #include <asm/r4kcache.h>
+
++#define cpu_is_bmips32() (current_cpu_type() == CPU_BMIPS32)
++#define cpu_is_bmips3300() (IS_ENABLED(CONFIG_CPU_BMIPS3300) && \
++ current_cpu_type() == CPU_BMIPS3300)
++#define cpu_is_bmips4350() (IS_ENABLED(CONFIG_CPU_BMIPS4350) && \
++ current_cpu_type() == CPU_BMIPS4350)
++#define cpu_is_bmips4380() (IS_ENABLED(CONFIG_CPU_BMIPS4380) && \
++ current_cpu_type() == CPU_BMIPS4380)
++#define cpu_is_bmips5000() (IS_ENABLED(CONFIG_CPU_BMIPS5000) && \
++ current_cpu_type() == CPU_BMIPS5000)
++
+ extern struct plat_smp_ops bmips_smp_ops;
+ extern char bmips_reset_nmi_vec;
+ extern char bmips_reset_nmi_vec_end;