blob: 12e776388e7adb157e108a6723b93e16106428fe [file] [log] [blame]
/*
* Copyright 2014, NICTA
*
* This software may be distributed and modified according to the terms of
* the BSD 2-Clause license. Note that NO WARRANTY is provided.
* See "LICENSE_BSD2.txt" for details.
*
* @TAG(NICTA_BSD)
*/
#ifndef _SYNC_SEM_BARE_H_
#define _SYNC_SEM_BARE_H_
/* An unmanaged semaphore; i.e. the caller stores the state related to the
* semaphore itself. This can be useful in scenarios such as CAmkES, where
* immediate concurrency means we have a race on initialising a managed
* semaphore.
*/
#include <sel4/sel4.h>
int sync_sem_bare_wait(seL4_CPtr ep, volatile int *value);
int sync_sem_bare_trywait(seL4_CPtr ep, volatile int *value);
int sync_sem_bare_post(seL4_CPtr ep, volatile int *value);
#endif