Changeset 08a19ba in mainline for kernel/generic/include/synch/mutex.h
- Timestamp:
- 2008-06-23T18:44:48Z (17 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 1a1744e
- Parents:
- deaf8d5
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/generic/include/synch/mutex.h
rdeaf8d5 r08a19ba 40 40 #include <synch/synch.h> 41 41 42 typedef enum { 43 MUTEX_PASSIVE, 44 MUTEX_ACTIVE 45 } mutex_type_t; 46 42 47 typedef struct { 48 mutex_type_t type; 43 49 semaphore_t sem; 44 50 } mutex_t; 45 51 46 #define mutex_lock(mtx) 52 #define mutex_lock(mtx) \ 47 53 _mutex_lock_timeout((mtx), SYNCH_NO_TIMEOUT, SYNCH_FLAGS_NONE) 48 #define mutex_trylock(mtx) 54 #define mutex_trylock(mtx) \ 49 55 _mutex_lock_timeout((mtx), SYNCH_NO_TIMEOUT, SYNCH_FLAGS_NON_BLOCKING) 50 #define mutex_lock_timeout(mtx, usec) 56 #define mutex_lock_timeout(mtx, usec) \ 51 57 _mutex_lock_timeout((mtx), (usec), SYNCH_FLAGS_NON_BLOCKING) 52 58 53 extern void mutex_initialize(mutex_t * mtx);54 extern int _mutex_lock_timeout(mutex_t * mtx, uint32_t usec, int flags);55 extern void mutex_unlock(mutex_t * mtx);59 extern void mutex_initialize(mutex_t *, mutex_type_t); 60 extern int _mutex_lock_timeout(mutex_t *, uint32_t, int); 61 extern void mutex_unlock(mutex_t *); 56 62 57 63 #endif
Note:
See TracChangeset
for help on using the changeset viewer.