X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fcpu%2Fpower.h;h=f161c698f40ebf14f261d4b77323138e45f98cfb;hb=bc30005bd88b5a7673c45d1dd09c9240fbb00db6;hp=b4550ad6d0b4ba64f8d5b05dfca8113d65799670;hpb=0eeba5822b3ff0e76ae0fd0272536d371d272d7d;p=bertos.git diff --git a/bertos/cpu/power.h b/bertos/cpu/power.h index b4550ad6..f161c698 100644 --- a/bertos/cpu/power.h +++ b/bertos/cpu/power.h @@ -37,8 +37,10 @@ #ifndef CPU_POWER_H #define CPU_POWER_H -#include -#include +#include "cfg/cfg_proc.h" +#include "cfg/cfg_wdt.h" + +#include #if CONFIG_KERN #include @@ -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