X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=tmk_core%2Fcommon%2Fwait.h;h=553f5243f1b824545555462832701bd0aadeb707;hb=5960d0349c184ceec790a8c31a1f3b1edb5d8d72;hp=40d00b0c75184e88f1effc9a9153bde01979d9fc;hpb=f1f2066657f4a0998adc016c95d7e541b436e09f;p=qmk_firmware.git diff --git a/tmk_core/common/wait.h b/tmk_core/common/wait.h index 40d00b0c7..553f5243f 100644 --- a/tmk_core/common/wait.h +++ b/tmk_core/common/wait.h @@ -1,6 +1,8 @@ #ifndef WAIT_H #define WAIT_H +#include + #ifdef __cplusplus extern "C" { #endif @@ -9,8 +11,20 @@ extern "C" { # include # define wait_ms(ms) _delay_ms(ms) # define wait_us(us) _delay_us(us) +#elif defined PROTOCOL_CHIBIOS +# include "ch.h" +# if defined(STM32F3xx_MCUCONF) +# define wait_ms(ms) chSysPolledDelayX(MS2RTC(STM32_HCLK, (ms))) +# define wait_us(us) chSysPolledDelayX(US2RTC(STM32_HCLK, (us))) +# else +# define wait_ms(ms) chThdSleepMilliseconds(ms) +# define wait_us(us) chThdSleepMicroseconds(us) +# endif #elif defined(__arm__) # include "wait_api.h" +#else // Unit tests +void wait_ms(uint32_t ms); +#define wait_us(us) wait_ms(us / 1000) #endif #ifdef __cplusplus