diff options
| author | Dániel Buga <[email protected]> | 2024-12-30 12:13:13 +0100 |
|---|---|---|
| committer | Dániel Buga <[email protected]> | 2024-12-30 12:13:13 +0100 |
| commit | 44217aa0924e7590aa0afabdf17babd5c2ea5b82 (patch) | |
| tree | e42f5d02f9b560610b870d802cf390518180c3c6 /embassy-rp/src | |
| parent | a4f8fddd696ca2e3705827ba4b3806cbadcb3134 (diff) | |
Desugar some async fns
Diffstat (limited to 'embassy-rp/src')
| -rw-r--r-- | embassy-rp/src/adc.rs | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/embassy-rp/src/adc.rs b/embassy-rp/src/adc.rs index 9582e43c8..19441f194 100644 --- a/embassy-rp/src/adc.rs +++ b/embassy-rp/src/adc.rs | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | //! ADC driver. | 1 | //! ADC driver. |
| 2 | use core::future::poll_fn; | 2 | use core::future::{poll_fn, Future}; |
| 3 | use core::marker::PhantomData; | 3 | use core::marker::PhantomData; |
| 4 | use core::mem; | 4 | use core::mem; |
| 5 | use core::sync::atomic::{compiler_fence, Ordering}; | 5 | use core::sync::atomic::{compiler_fence, Ordering}; |
| @@ -193,18 +193,18 @@ impl<'d> Adc<'d, Async> { | |||
| 193 | Self { phantom: PhantomData } | 193 | Self { phantom: PhantomData } |
| 194 | } | 194 | } |
| 195 | 195 | ||
| 196 | async fn wait_for_ready() { | 196 | fn wait_for_ready() -> impl Future<Output = ()> { |
| 197 | let r = Self::regs(); | 197 | let r = Self::regs(); |
| 198 | r.inte().write(|w| w.set_fifo(true)); | 198 | r.inte().write(|w| w.set_fifo(true)); |
| 199 | compiler_fence(Ordering::SeqCst); | 199 | compiler_fence(Ordering::SeqCst); |
| 200 | poll_fn(|cx| { | 200 | |
| 201 | poll_fn(move |cx| { | ||
| 201 | WAKER.register(cx.waker()); | 202 | WAKER.register(cx.waker()); |
| 202 | if r.cs().read().ready() { | 203 | if r.cs().read().ready() { |
| 203 | return Poll::Ready(()); | 204 | return Poll::Ready(()); |
| 204 | } | 205 | } |
| 205 | Poll::Pending | 206 | Poll::Pending |
| 206 | }) | 207 | }) |
| 207 | .await; | ||
| 208 | } | 208 | } |
| 209 | 209 | ||
| 210 | /// Sample a value from a channel until completed. | 210 | /// Sample a value from a channel until completed. |
