Merge branch 'mipsr6-for-3.20' of git://git.linux-mips.org/pub/scm/mchandras/linux...
authorRalf Baechle <ralf@linux-mips.org>
Thu, 19 Feb 2015 15:00:34 +0000 (16:00 +0100)
committerRalf Baechle <ralf@linux-mips.org>
Thu, 19 Feb 2015 15:00:34 +0000 (16:00 +0100)
1  2 
arch/mips/Makefile
arch/mips/kernel/mips_ksyms.c

diff --combined arch/mips/Makefile
index 67109e53ebc0c8cb9e316fb9e43c4b71afcd1b27,aaee9a0b89bf786974288d510fc01837942109bc..b3de8ec06e88ad16867442ebe00249c3bc42975e
@@@ -138,10 -138,12 +138,12 @@@ cflags-$(CONFIG_CPU_MIPS32_R1)  += $(cal
                        -Wa,-mips32 -Wa,--trap
  cflags-$(CONFIG_CPU_MIPS32_R2)        += $(call cc-option,-march=mips32r2,-mips32r2 -U_MIPS_ISA -D_MIPS_ISA=_MIPS_ISA_MIPS32) \
                        -Wa,-mips32r2 -Wa,--trap
+ cflags-$(CONFIG_CPU_MIPS32_R6)        += -march=mips32r6 -Wa,--trap
  cflags-$(CONFIG_CPU_MIPS64_R1)        += $(call cc-option,-march=mips64,-mips64 -U_MIPS_ISA -D_MIPS_ISA=_MIPS_ISA_MIPS64) \
                        -Wa,-mips64 -Wa,--trap
  cflags-$(CONFIG_CPU_MIPS64_R2)        += $(call cc-option,-march=mips64r2,-mips64r2 -U_MIPS_ISA -D_MIPS_ISA=_MIPS_ISA_MIPS64) \
                        -Wa,-mips64r2 -Wa,--trap
+ cflags-$(CONFIG_CPU_MIPS64_R6)        += -march=mips64r6 -Wa,--trap
  cflags-$(CONFIG_CPU_R5000)    += -march=r5000 -Wa,--trap
  cflags-$(CONFIG_CPU_R5432)    += $(call cc-option,-march=r5400,-march=r5000) \
                        -Wa,--trap
@@@ -164,16 -166,6 +166,16 @@@ cflags-$(CONFIG_CPU_CAVIUM_OCTEON) += -
  endif
  cflags-$(CONFIG_CAVIUM_CN63XXP1) += -Wa,-mfix-cn63xxp1
  cflags-$(CONFIG_CPU_BMIPS)    += -march=mips32 -Wa,-mips32 -Wa,--trap
 +#
 +# binutils from v2.25 on and gcc starting from v4.9.0 treat -march=loongson3a
 +# as MIPS64 R1; older versions as just R1.  This leaves the possibility open
 +# that GCC might generate R2 code for -march=loongson3a which then is rejected
 +# by GAS.  The cc-option can't probe for this behaviour so -march=loongson3a
 +# can't easily be used safely within the kbuild framework.
 +#
 +cflags-$(CONFIG_CPU_LOONGSON3)  +=                                    \
 +      $(call cc-option,-march=mips64r2,-mips64r2 -U_MIPS_ISA -D_MIPS_ISA=_MIPS_ISA_MIPS64) \
 +      -Wa,-mips64r2 -Wa,--trap
  
  cflags-$(CONFIG_CPU_R4000_WORKAROUNDS)        += $(call cc-option,-mfix-r4000,)
  cflags-$(CONFIG_CPU_R4400_WORKAROUNDS)        += $(call cc-option,-mfix-r4400,)
index 1a73c6c9e4b73b53cfe438928fdd9fc471329fc8,ac66c30c8cd6bcec0df50896123e652733b7ea6c..291af0b5c4828adaa22ff0fc065f37c6a094fd85
@@@ -14,8 -14,6 +14,8 @@@
  #include <linux/mm.h>
  #include <asm/uaccess.h>
  #include <asm/ftrace.h>
 +#include <asm/fpu.h>
 +#include <asm/msa.h>
  
  extern void *__bzero(void *__s, size_t __count);
  extern long __strncpy_from_kernel_nocheck_asm(char *__to,
@@@ -33,14 -31,6 +33,14 @@@ extern long __strnlen_kernel_asm(const 
  extern long __strnlen_user_nocheck_asm(const char *s);
  extern long __strnlen_user_asm(const char *s);
  
 +/*
 + * Core architecture code
 + */
 +EXPORT_SYMBOL_GPL(_save_fp);
 +#ifdef CONFIG_CPU_HAS_MSA
 +EXPORT_SYMBOL_GPL(_save_msa);
 +#endif
 +
  /*
   * String functions
   */
@@@ -77,11 -67,13 +77,13 @@@ EXPORT_SYMBOL(__strnlen_kernel_asm)
  EXPORT_SYMBOL(__strnlen_user_nocheck_asm);
  EXPORT_SYMBOL(__strnlen_user_asm);
  
+ #ifndef CONFIG_CPU_MIPSR6
  EXPORT_SYMBOL(csum_partial);
  EXPORT_SYMBOL(csum_partial_copy_nocheck);
  EXPORT_SYMBOL(__csum_partial_copy_kernel);
  EXPORT_SYMBOL(__csum_partial_copy_to_user);
  EXPORT_SYMBOL(__csum_partial_copy_from_user);
+ #endif
  
  EXPORT_SYMBOL(invalid_pte_table);
  #ifdef CONFIG_FUNCTION_TRACER