aboutsummaryrefslogtreecommitdiffstats
path: root/src/gos/chibios.c
diff options
context:
space:
mode:
authorinmarket <andrewh@inmarket.com.au>2014-03-14 07:38:02 +1000
committerinmarket <andrewh@inmarket.com.au>2014-03-14 07:38:02 +1000
commit6f54bde79c553301a35535a0a71a4a09b181abfa (patch)
tree1408ad80459cd09da47960b4905d50195916639d /src/gos/chibios.c
parent6d372f13528f44919ec193d03248d55a53484968 (diff)
parentea5a1b849df6e5085a92957ad387f9e653674415 (diff)
downloaduGFX-6f54bde79c553301a35535a0a71a4a09b181abfa.tar.gz
uGFX-6f54bde79c553301a35535a0a71a4a09b181abfa.tar.bz2
uGFX-6f54bde79c553301a35535a0a71a4a09b181abfa.zip
Merge branch 'master' into freertos
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();