summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsakumisu <[email protected]>2023-12-05 20:49:26 +0800
committersakumisu <[email protected]>2023-12-05 20:49:26 +0800
commit48730e20bee7e67d1ff5b114bbd5789cb6bff0f6 (patch)
treef39af49a99652cbba7159ba884ae6c369f705045
parent11e389f9227c32df59679053a4f57efe488e57e1 (diff)
add usb_osal_sem_reset api
-rw-r--r--common/usb_osal.h1
-rw-r--r--osal/usb_osal_freertos.c5
-rw-r--r--osal/usb_osal_rtthread.c5
-rw-r--r--osal/usb_osal_yoc.c5
4 files changed, 16 insertions, 0 deletions
diff --git a/common/usb_osal.h b/common/usb_osal.h
index 560b73ab..bf68acaa 100644
--- a/common/usb_osal.h
+++ b/common/usb_osal.h
@@ -27,6 +27,7 @@ usb_osal_sem_t usb_osal_sem_create(uint32_t initial_count);
void usb_osal_sem_delete(usb_osal_sem_t sem);
int usb_osal_sem_take(usb_osal_sem_t sem, uint32_t timeout);
int usb_osal_sem_give(usb_osal_sem_t sem);
+void usb_osal_sem_reset(usb_osal_sem_t sem);
usb_osal_mutex_t usb_osal_mutex_create(void);
void usb_osal_mutex_delete(usb_osal_mutex_t mutex);
diff --git a/osal/usb_osal_freertos.c b/osal/usb_osal_freertos.c
index 2c4ed542..bd49b807 100644
--- a/osal/usb_osal_freertos.c
+++ b/osal/usb_osal_freertos.c
@@ -59,6 +59,11 @@ int usb_osal_sem_give(usb_osal_sem_t sem)
return (ret == pdPASS) ? 0 : -ETIMEDOUT;
}
+void usb_osal_sem_reset(usb_osal_sem_t sem)
+{
+ xQueueReset((QueueHandle_t)sem);
+}
+
usb_osal_mutex_t usb_osal_mutex_create(void)
{
return (usb_osal_mutex_t)xSemaphoreCreateMutex();
diff --git a/osal/usb_osal_rtthread.c b/osal/usb_osal_rtthread.c
index 964c1a7f..6d1960b9 100644
--- a/osal/usb_osal_rtthread.c
+++ b/osal/usb_osal_rtthread.c
@@ -61,6 +61,11 @@ int usb_osal_sem_give(usb_osal_sem_t sem)
return (int)rt_sem_release((rt_sem_t)sem);
}
+void usb_osal_sem_reset(usb_osal_sem_t sem)
+{
+ rt_sem_control((rt_sem_t)sem, RT_IPC_CMD_RESET, (void *)0);
+}
+
usb_osal_mutex_t usb_osal_mutex_create(void)
{
return (usb_osal_mutex_t)rt_mutex_create("usbh_mutex", RT_IPC_FLAG_FIFO);
diff --git a/osal/usb_osal_yoc.c b/osal/usb_osal_yoc.c
index b782b296..e87cb30c 100644
--- a/osal/usb_osal_yoc.c
+++ b/osal/usb_osal_yoc.c
@@ -51,6 +51,11 @@ int usb_osal_sem_give(usb_osal_sem_t sem)
return 0;
}
+void usb_osal_sem_reset(usb_osal_sem_t sem)
+{
+
+}
+
usb_osal_mutex_t usb_osal_mutex_create(void)
{
aos_mutex_t mutex = NULL;