diff options
| author | xieyangrun <[email protected]> | 2022-03-31 18:20:30 +0800 |
|---|---|---|
| committer | sakumisu <[email protected]> | 2022-03-31 18:40:11 +0800 |
| commit | 322964f598bcb78c3943b7fc1d097ad9845eaffd (patch) | |
| tree | 290c98479214c4b526453175338afb5b81b579b5 /osal | |
| parent | dfa977caa2a614ec3571fc2165d9dcb445c245cd (diff) | |
fixed osal critical section protect adapt 64bits CPU.
Diffstat (limited to 'osal')
| -rw-r--r-- | osal/usb_osal.h | 4 | ||||
| -rw-r--r-- | osal/usb_osal_freertos.c | 4 | ||||
| -rw-r--r-- | osal/usb_osal_rtthread.c | 6 | ||||
| -rw-r--r-- | osal/usb_workq.c | 6 |
4 files changed, 10 insertions, 10 deletions
diff --git a/osal/usb_osal.h b/osal/usb_osal.h index 92957c33..55d7e22d 100644 --- a/osal/usb_osal.h +++ b/osal/usb_osal.h @@ -51,8 +51,8 @@ void usb_osal_event_delete(usb_osal_event_t event); int usb_osal_event_recv(usb_osal_event_t event, uint32_t set, uint32_t *recved); int usb_osal_event_send(usb_osal_event_t event, uint32_t set); -uint32_t usb_osal_enter_critical_section(void); -void usb_osal_leave_critical_section(uint32_t flag); +size_t usb_osal_enter_critical_section(void); +void usb_osal_leave_critical_section(size_t flag); void usb_osal_msleep(uint32_t delay); diff --git a/osal/usb_osal_freertos.c b/osal/usb_osal_freertos.c index 4b890ae8..933833b6 100644 --- a/osal/usb_osal_freertos.c +++ b/osal/usb_osal_freertos.c @@ -131,13 +131,13 @@ int usb_osal_event_send(usb_osal_event_t event, uint32_t set) return (ret == pdPASS) ? 0 : -1; } -uint32_t usb_osal_enter_critical_section(void) +size_t usb_osal_enter_critical_section(void) { taskENTER_CRITICAL(); return 1; } -void usb_osal_leave_critical_section(uint32_t flag) +void usb_osal_leave_critical_section(size_t flag) { taskEXIT_CRITICAL(); } diff --git a/osal/usb_osal_rtthread.c b/osal/usb_osal_rtthread.c index f0c1c589..5212f349 100644 --- a/osal/usb_osal_rtthread.c +++ b/osal/usb_osal_rtthread.c @@ -117,17 +117,17 @@ int usb_osal_event_send(usb_osal_event_t event, uint32_t set) return ret; } -uint32_t usb_osal_enter_critical_section(void) +size_t usb_osal_enter_critical_section(void) { return rt_hw_interrupt_disable(); } -void usb_osal_leave_critical_section(uint32_t flag) +void usb_osal_leave_critical_section(size_t flag) { rt_hw_interrupt_enable(flag); } void usb_osal_msleep(uint32_t delay) { - rt_thread_mdelay(rt_tick_from_millisecond(delay)); + rt_thread_mdelay(delay); } diff --git a/osal/usb_workq.c b/osal/usb_workq.c index f8c1feb2..7ec34ffc 100644 --- a/osal/usb_workq.c +++ b/osal/usb_workq.c @@ -27,7 +27,7 @@ void usb_workqueue_submit(struct usb_workqueue *queue, struct usb_work *work, usb_worker_t worker, void *arg, uint32_t ticks) { - uint32_t flags; + size_t flags; flags = usb_osal_enter_critical_section(); usb_dlist_remove(&work->list); work->worker = worker; @@ -47,7 +47,7 @@ struct usb_workqueue g_lpworkq = { NULL }; static void usbh_hpwork_thread(void *argument) { struct usb_work *work; - uint32_t flags; + size_t flags; int ret; struct usb_workqueue *queue = (struct usb_workqueue *)argument; while (1) { @@ -70,7 +70,7 @@ static void usbh_hpwork_thread(void *argument) static void usbh_lpwork_thread(void *argument) { struct usb_work *work; - uint32_t flags; + size_t flags; int ret; struct usb_workqueue *queue = (struct usb_workqueue *)argument; while (1) { |
