diff options
Diffstat (limited to 'firmware/kernel/pthread/mutex.c')
-rw-r--r-- | firmware/kernel/pthread/mutex.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/firmware/kernel/pthread/mutex.c b/firmware/kernel/pthread/mutex.c new file mode 100644 index 0000000000..49503b5d82 --- /dev/null +++ b/firmware/kernel/pthread/mutex.c | |||
@@ -0,0 +1,21 @@ | |||
1 | #include <pthread.h> | ||
2 | #include "kernel.h" | ||
3 | |||
4 | void mutex_init(struct mutex *m) | ||
5 | { | ||
6 | pthread_mutexattr_t attr; | ||
7 | pthread_mutexattr_init(&attr); | ||
8 | pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE); | ||
9 | pthread_mutex_init(&m->mutex, &attr); | ||
10 | pthread_mutexattr_destroy(&attr); | ||
11 | } | ||
12 | |||
13 | void mutex_lock(struct mutex *m) | ||
14 | { | ||
15 | pthread_mutex_lock(&m->mutex); | ||
16 | } | ||
17 | |||
18 | void mutex_unlock(struct mutex *m) | ||
19 | { | ||
20 | pthread_mutex_unlock(&m->mutex); | ||
21 | } | ||