diff --git a/include/nuttx/event.h b/include/nuttx/event.h index 90afafbac12..365443c8664 100644 --- a/include/nuttx/event.h +++ b/include/nuttx/event.h @@ -31,7 +31,6 @@ #include #include -#include /**************************************************************************** * Pre-processor Definitions @@ -73,7 +72,6 @@ struct nxevent_s { struct list_node list; /* Waiting list of nxevent_wait_t */ volatile nxevent_mask_t events; /* Pending Events */ - spinlock_t lock; /* Spinlock */ }; #ifdef CONFIG_FS_NAMED_EVENTS diff --git a/sched/event/event_clear.c b/sched/event/event_clear.c index df70486c4a9..6f67b12f3cf 100644 --- a/sched/event/event_clear.c +++ b/sched/event/event_clear.c @@ -60,12 +60,12 @@ nxevent_mask_t nxevent_clear(FAR nxevent_t *event, nxevent_mask_t mask) DEBUGASSERT(event != NULL); - flags = spin_lock_irqsave(&event->lock); + flags = enter_critical_section(); events = event->events; event->events &= ~mask; - spin_unlock_irqrestore(&event->lock, flags); + leave_critical_section(flags); return events; } diff --git a/sched/event/event_getmask.c b/sched/event/event_getmask.c index f15e6e72633..1ab3031d327 100644 --- a/sched/event/event_getmask.c +++ b/sched/event/event_getmask.c @@ -58,11 +58,11 @@ nxevent_mask_t nxevent_getmask(FAR nxevent_t *event) DEBUGASSERT(event != NULL); - flags = spin_lock_irqsave(&event->lock); + flags = enter_critical_section(); events = event->events; - spin_unlock_irqrestore(&event->lock, flags); + leave_critical_section(flags); return events; } diff --git a/sched/event/event_init.c b/sched/event/event_init.c index 2525969b2d2..5d93b81f537 100644 --- a/sched/event/event_init.c +++ b/sched/event/event_init.c @@ -49,6 +49,5 @@ void nxevent_init(FAR nxevent_t *event, nxevent_mask_t events) { event->events = events; - spin_lock_init(&event->lock); list_initialize(&event->list); } diff --git a/sched/event/event_post.c b/sched/event/event_post.c index 056107b87eb..07b9f0b4f23 100644 --- a/sched/event/event_post.c +++ b/sched/event/event_post.c @@ -81,7 +81,7 @@ int nxevent_post(FAR nxevent_t *event, nxevent_mask_t events, return -EINVAL; } - flags = spin_lock_irqsave_nopreempt(&event->lock); + flags = enter_critical_section(); if ((eflags & NXEVENT_POST_SET) != 0) { @@ -135,7 +135,7 @@ int nxevent_post(FAR nxevent_t *event, nxevent_mask_t events, } } - spin_unlock_irqrestore_nopreempt(&event->lock, flags); + leave_critical_section(flags); return ret; } diff --git a/sched/event/event_wait.c b/sched/event/event_wait.c index f70b85564b1..04d62cee249 100644 --- a/sched/event/event_wait.c +++ b/sched/event/event_wait.c @@ -80,7 +80,7 @@ nxevent_mask_t nxevent_tickwait_wait(FAR nxevent_t *event, events = ~0; } - flags = spin_lock_irqsave(&event->lock); + flags = enter_critical_section(); if ((eflags & NXEVENT_WAIT_RESET) != 0) { @@ -126,7 +126,7 @@ nxevent_mask_t nxevent_tickwait_wait(FAR nxevent_t *event, wait->eflags = eflags; list_add_tail(&event->list, &(wait->node)); - spin_unlock_irqrestore(&event->lock, flags); + leave_critical_section(flags); /* Wait for the event */ @@ -143,7 +143,7 @@ nxevent_mask_t nxevent_tickwait_wait(FAR nxevent_t *event, nxsem_destroy(&(wait->sem)); - flags = spin_lock_irqsave(&event->lock); + flags = enter_critical_section(); if (ret == 0) { events = wait->expect; @@ -160,7 +160,7 @@ nxevent_mask_t nxevent_tickwait_wait(FAR nxevent_t *event, } } - spin_unlock_irqrestore(&event->lock, flags); + leave_critical_section(flags); return events; }