fixed osal critical section protect adapt 64bits CPU.
This commit is contained in:
@@ -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);
|
||||
|
||||
|
||||
@@ -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();
|
||||
}
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
@@ -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) {
|
||||
|
||||
Reference in New Issue
Block a user