diff options
| author | hathach <[email protected]> | 2019-04-02 16:18:36 +0700 |
|---|---|---|
| committer | hathach <[email protected]> | 2019-04-02 16:23:13 +0700 |
| commit | 6564580c3d9319b02a7a58958b75672e82478162 (patch) | |
| tree | 5c629e1fd7243412b3e7725db0fae84112d01ae6 /src/osal | |
| parent | 2c1072c0aba48a2e6cbe93118c286b7999b0db43 (diff) | |
clean up
Diffstat (limited to 'src/osal')
| -rw-r--r-- | src/osal/osal.h | 50 | ||||
| -rw-r--r-- | src/osal/osal_freertos.h | 5 | ||||
| -rw-r--r-- | src/osal/osal_none.h | 11 |
3 files changed, 37 insertions, 29 deletions
diff --git a/src/osal/osal.h b/src/osal/osal.h index d6c33de3f..cdeaa2974 100644 --- a/src/osal/osal.h +++ b/src/osal/osal.h @@ -34,7 +34,6 @@ /** \addtogroup group_osal
* @{ */
-#include "tusb_option.h"
#include "common/tusb_common.h"
enum
@@ -48,34 +47,33 @@ enum typedef void (*osal_task_func_t)( void * );
+//--------------------------------------------------------------------+
+// OSAL Porting API
+//--------------------------------------------------------------------+
+#if 0
+void osal_task_delay(uint32_t msec);
+
+//------------- Semaphore -------------//
+osal_semaphore_t osal_semaphore_create(osal_semaphore_def_t* semdef);
+bool osal_semaphore_post(osal_semaphore_t sem_hdl, bool in_isr);
+bool osal_semaphore_wait (osal_semaphore_t sem_hdl, uint32_t msec);
+
+void osal_semaphore_reset(osal_semaphore_t sem_hdl); // TODO removed
+
+//------------- Mutex -------------//
+osal_mutex_t osal_mutex_create(osal_mutex_def_t* mdef);
+bool osal_mutex_lock (osal_mutex_t sem_hdl, uint32_t msec);
+bool osal_mutex_unlock(osal_mutex_t mutex_hdl);
+
+//------------- Queue -------------//
+osal_queue_t osal_queue_create(osal_queue_def_t* qdef);
+bool osal_queue_receive(osal_queue_t const qhdl, void* data);
+bool osal_queue_send(osal_queue_t const qhdl, void const * data, bool in_isr);
+#endif
+
#if CFG_TUSB_OS == OPT_OS_NONE
#include "osal_none.h"
#else
- /* RTOS Porting API
- *
- * Task
- * void osal_task_delay(uint32_t msec)
- *
- * Queue
- * osal_queue_def_t, osal_queue_t
- * osal_queue_t osal_queue_create(osal_queue_def_t* qdef)
- * osal_queue_receive (osal_queue_t const queue_hdl, void *p_data, uint32_t msec, uint32_t *p_error)
- * bool osal_queue_send(osal_queue_t const queue_hdl, void const * data, bool in_isr)
- *
- * Semaphore
- * osal_semaphore_def_t, osal_semaphore_t
- * osal_semaphore_t osal_semaphore_create(osal_semaphore_def_t* semdef)
- * bool osal_semaphore_post(osal_semaphore_t sem_hdl, bool in_isr)
- * bool osal_semaphore_wait(osal_semaphore_t sem_hdl, uint32_t msec)
- * void osal_semaphore_reset(osal_semaphore_t const sem_hdl)
- *
- * Mutex
- * osal_mutex_t
- * osal_mutex_create(osal_mutex_def_t* mdef)
- * bool osal_mutex_unlock(osal_mutex_t mutex_hdl)
- * void osal_mutex_lock(osal_mutex_t mutex_hdl, uint32_t msec, uint32_t *p_error)
- */
-
#if CFG_TUSB_OS == OPT_OS_FREERTOS
#include "osal_freertos.h"
#elif CFG_TUSB_OS == OPT_OS_MYNEWT
diff --git a/src/osal/osal_freertos.h b/src/osal/osal_freertos.h index 973a18546..215f7bcad 100644 --- a/src/osal/osal_freertos.h +++ b/src/osal/osal_freertos.h @@ -83,7 +83,10 @@ static inline osal_mutex_t osal_mutex_create(osal_mutex_def_t* mdef) return xSemaphoreCreateMutexStatic(mdef); } -#define osal_mutex_lock osal_semaphore_wait +static inline bool osal_mutex_lock (osal_mutex_t mutex_hdl, uint32_t msec) +{ + return osal_semaphore_wait(mutex_hdl, msec); +} static inline bool osal_mutex_unlock(osal_mutex_t mutex_hdl) { diff --git a/src/osal/osal_none.h b/src/osal/osal_none.h index d1d365bbe..021064171 100644 --- a/src/osal/osal_none.h +++ b/src/osal/osal_none.h @@ -95,8 +95,15 @@ static inline osal_mutex_t osal_mutex_create(osal_mutex_def_t* mdef) return mdef;
}
-#define osal_mutex_lock osal_semaphore_wait
-#define osal_mutex_unlock(_mutex_hdl) osal_semaphore_post(_mutex_hdl, false)
+static inline bool osal_mutex_lock (osal_mutex_t mutex_hdl, uint32_t msec)
+{
+ return osal_semaphore_wait(mutex_hdl, msec);
+}
+
+static inline bool osal_mutex_unlock(osal_mutex_t mutex_hdl)
+{
+ return osal_semaphore_post(mutex_hdl, false);
+}
//--------------------------------------------------------------------+
// QUEUE API
|
