aboutsummaryrefslogtreecommitdiffstats
path: root/src/gos/chibios.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/gos/chibios.c')
-rw-r--r--src/gos/chibios.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/gos/chibios.c b/src/gos/chibios.c
index cf02b3e2..7d64fe1c 100644
--- a/src/gos/chibios.c
+++ b/src/gos/chibios.c
@@ -89,6 +89,13 @@ bool_t gfxSemWait(gfxSem *psem, delaytime_t ms) {
return chSemWaitTimeout(&psem->sem, MS2ST(ms)) != RDY_TIMEOUT;
}
+bool_t gfxSemWaitI(gfxSem *psem) {
+ if (chSemGetCounterI(&psem->sem) <= 0)
+ return FALSE;
+ chSemFastWaitI(&psem->sem);
+ return TRUE;
+}
+
void gfxSemSignal(gfxSem *psem) {
chSysLock();