X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fcpu%2Fpower.h;h=f161c698f40ebf14f261d4b77323138e45f98cfb;hb=485f68165577f92d04057771bd11e969be9a2c7c;hp=93c40c0394936d09552074b905eb423e9b4113aa;hpb=b7be39427a8d818c10da11295bd28ba9b00e0628;p=bertos.git diff --git a/bertos/cpu/power.h b/bertos/cpu/power.h index 93c40c03..f161c698 100644 --- a/bertos/cpu/power.h +++ b/bertos/cpu/power.h @@ -40,6 +40,8 @@ #include "cfg/cfg_proc.h" #include "cfg/cfg_wdt.h" +#include + #if CONFIG_KERN #include #endif @@ -66,8 +68,10 @@ */ INLINE void cpu_relax(void) { + MEMORY_BARRIER; #if CONFIG_KERN - proc_yield(); + if (proc_preemptAllowed()) + proc_yield(); #endif #if CONFIG_WATCHDOG