diff options
| -rw-r--r-- | embassy-nrf/src/spis.rs | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/embassy-nrf/src/spis.rs b/embassy-nrf/src/spis.rs index 416db2d33..f3105007f 100644 --- a/embassy-nrf/src/spis.rs +++ b/embassy-nrf/src/spis.rs | |||
| @@ -201,12 +201,12 @@ impl<'d, T: Instance> Spis<'d, T> { | |||
| 201 | let s = T::state(); | 201 | let s = T::state(); |
| 202 | 202 | ||
| 203 | if r.events_end.read().bits() != 0 { | 203 | if r.events_end.read().bits() != 0 { |
| 204 | s.end_waker.wake(); | 204 | s.waker.wake(); |
| 205 | r.intenclr.write(|w| w.end().clear()); | 205 | r.intenclr.write(|w| w.end().clear()); |
| 206 | } | 206 | } |
| 207 | 207 | ||
| 208 | if r.events_acquired.read().bits() != 0 { | 208 | if r.events_acquired.read().bits() != 0 { |
| 209 | s.acquire_waker.wake(); | 209 | s.waker.wake(); |
| 210 | r.intenclr.write(|w| w.acquired().clear()); | 210 | r.intenclr.write(|w| w.acquired().clear()); |
| 211 | } | 211 | } |
| 212 | } | 212 | } |
| @@ -295,7 +295,7 @@ impl<'d, T: Instance> Spis<'d, T> { | |||
| 295 | 295 | ||
| 296 | // Wait until CPU has acquired the semaphore. | 296 | // Wait until CPU has acquired the semaphore. |
| 297 | poll_fn(|cx| { | 297 | poll_fn(|cx| { |
| 298 | s.acquire_waker.register(cx.waker()); | 298 | s.waker.register(cx.waker()); |
| 299 | if r.semstat.read().bits() == 1 { | 299 | if r.semstat.read().bits() == 1 { |
| 300 | return Poll::Ready(()); | 300 | return Poll::Ready(()); |
| 301 | } | 301 | } |
| @@ -310,7 +310,7 @@ impl<'d, T: Instance> Spis<'d, T> { | |||
| 310 | // Wait for 'end' event. | 310 | // Wait for 'end' event. |
| 311 | r.intenset.write(|w| w.end().set()); | 311 | r.intenset.write(|w| w.end().set()); |
| 312 | poll_fn(|cx| { | 312 | poll_fn(|cx| { |
| 313 | s.end_waker.register(cx.waker()); | 313 | s.waker.register(cx.waker()); |
| 314 | if r.events_end.read().bits() != 0 { | 314 | if r.events_end.read().bits() != 0 { |
| 315 | return Poll::Ready(()); | 315 | return Poll::Ready(()); |
| 316 | } | 316 | } |
| @@ -451,15 +451,13 @@ pub(crate) mod sealed { | |||
| 451 | use super::*; | 451 | use super::*; |
| 452 | 452 | ||
| 453 | pub struct State { | 453 | pub struct State { |
| 454 | pub end_waker: AtomicWaker, | 454 | pub waker: AtomicWaker, |
| 455 | pub acquire_waker: AtomicWaker, | ||
| 456 | } | 455 | } |
| 457 | 456 | ||
| 458 | impl State { | 457 | impl State { |
| 459 | pub const fn new() -> Self { | 458 | pub const fn new() -> Self { |
| 460 | Self { | 459 | Self { |
| 461 | end_waker: AtomicWaker::new(), | 460 | waker: AtomicWaker::new(), |
| 462 | acquire_waker: AtomicWaker::new(), | ||
| 463 | } | 461 | } |
| 464 | } | 462 | } |
| 465 | } | 463 | } |
