Commit f4c6b6bc5a4fc8d607f2d89369008c85a3a12a8b

Authored by Ralf Baechle
1 parent 6eb10bc9e2

MIPS: Consolidate all CONFIG_CPU_HAS_LLSC use in a single C file.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

Showing 4 changed files with 12 additions and 9 deletions Side-by-side Diff

arch/mips/include/asm/system.h
... ... @@ -63,11 +63,23 @@
63 63 #define __mips_mt_fpaff_switch_to(prev) do { (void) (prev); } while (0)
64 64 #endif
65 65  
  66 +#ifdef CONFIG_CPU_HAS_LLSC
  67 +#define __clear_software_ll_bit() do { } while (0)
  68 +#else
  69 +extern unsigned long ll_bit;
  70 +
  71 +#define __clear_software_ll_bit() \
  72 +do { \
  73 + ll_bit = 0; \
  74 +} while (0)
  75 +#endif
  76 +
66 77 #define switch_to(prev, next, last) \
67 78 do { \
68 79 __mips_mt_fpaff_switch_to(prev); \
69 80 if (cpu_has_dsp) \
70 81 __save_dsp(prev); \
  82 + __clear_software_ll_bit(); \
71 83 (last) = resume(prev, next, task_thread_info(next)); \
72 84 } while (0)
73 85  
arch/mips/kernel/octeon_switch.S
... ... @@ -36,9 +36,6 @@
36 36 .align 7
37 37 LEAF(resume)
38 38 .set arch=octeon
39   -#ifndef CONFIG_CPU_HAS_LLSC
40   - sw zero, ll_bit
41   -#endif
42 39 mfc0 t1, CP0_STATUS
43 40 LONG_S t1, THREAD_STATUS(a0)
44 41 cpu_save_nonscratch a0
arch/mips/kernel/r2300_switch.S
... ... @@ -46,9 +46,6 @@
46 46 * struct thread_info *next_ti) )
47 47 */
48 48 LEAF(resume)
49   -#ifndef CONFIG_CPU_HAS_LLSC
50   - sw zero, ll_bit
51   -#endif
52 49 mfc0 t1, CP0_STATUS
53 50 sw t1, THREAD_STATUS(a0)
54 51 cpu_save_nonscratch a0
arch/mips/kernel/r4k_switch.S
... ... @@ -45,9 +45,6 @@
45 45 */
46 46 .align 5
47 47 LEAF(resume)
48   -#ifndef CONFIG_CPU_HAS_LLSC
49   - sw zero, ll_bit
50   -#endif
51 48 mfc0 t1, CP0_STATUS
52 49 LONG_S t1, THREAD_STATUS(a0)
53 50 cpu_save_nonscratch a0