Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

MIPS: asm: local: Set the appropriate ISA level for MIPS R6

MIPS R6 changed the opcodes for LL/SC instructions so we need to set
the appropriate ISA level.

Cc: Matthew Fortune <Matthew.Fortune@imgtec.com>
Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>

+3 -2
+3 -2
arch/mips/include/asm/local.h
··· 5 5 #include <linux/bitops.h> 6 6 #include <linux/atomic.h> 7 7 #include <asm/cmpxchg.h> 8 + #include <asm/compiler.h> 8 9 #include <asm/war.h> 9 10 10 11 typedef struct ··· 48 47 unsigned long temp; 49 48 50 49 __asm__ __volatile__( 51 - " .set arch=r4000 \n" 50 + " .set "MIPS_ISA_ARCH_LEVEL" \n" 52 51 "1:" __LL "%1, %2 # local_add_return \n" 53 52 " addu %0, %1, %3 \n" 54 53 __SC "%0, %2 \n" ··· 93 92 unsigned long temp; 94 93 95 94 __asm__ __volatile__( 96 - " .set arch=r4000 \n" 95 + " .set "MIPS_ISA_ARCH_LEVEL" \n" 97 96 "1:" __LL "%1, %2 # local_sub_return \n" 98 97 " subu %0, %1, %3 \n" 99 98 __SC "%0, %2 \n"