diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/cpu.h | 3 | ||||
-rw-r--r-- | include/processor.h | 2 |
2 files changed, 3 insertions, 2 deletions
diff --git a/include/cpu.h b/include/cpu.h index 1e147aa..938492e 100644 --- a/include/cpu.h +++ b/include/cpu.h @@ -121,8 +121,7 @@ extern struct cpu_thread *boot_cpu; static inline void __nomcount cpu_relax(void) { /* Relax a bit to give sibling threads some breathing space */ - smt_low(); - smt_very_low(); + smt_lowest(); asm volatile("nop; nop; nop; nop;\n" "nop; nop; nop; nop;\n" "nop; nop; nop; nop;\n" diff --git a/include/processor.h b/include/processor.h index b98dff8..5906b86 100644 --- a/include/processor.h +++ b/include/processor.h @@ -197,6 +197,7 @@ #define smt_medium_low or 6,6,6 #define smt_extra_high or 7,7,7 #define smt_very_low or 31,31,31 +#define smt_lowest smt_low ; smt_very_low #else /* __ASSEMBLY__ */ @@ -214,6 +215,7 @@ static inline void smt_medium_high(void){ asm volatile("or 5,5,5"); } static inline void smt_medium_low(void) { asm volatile("or 6,6,6"); } static inline void smt_extra_high(void) { asm volatile("or 7,7,7"); } static inline void smt_very_low(void) { asm volatile("or 31,31,31"); } +static inline void smt_lowest(void) { smt_low(); smt_very_low(); } /* * SPR access functions |