diff options
Diffstat (limited to 'embassy-usb')
| -rw-r--r-- | embassy-usb/src/class/cdc_acm.rs | 5 | ||||
| -rw-r--r-- | embassy-usb/src/class/uac1/speaker.rs | 5 |
2 files changed, 4 insertions, 6 deletions
diff --git a/embassy-usb/src/class/cdc_acm.rs b/embassy-usb/src/class/cdc_acm.rs index 2823e522e..c5b1a56fe 100644 --- a/embassy-usb/src/class/cdc_acm.rs +++ b/embassy-usb/src/class/cdc_acm.rs | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | //! CDC-ACM class implementation, aka Serial over USB. | 1 | //! CDC-ACM class implementation, aka Serial over USB. |
| 2 | 2 | ||
| 3 | use core::cell::{Cell, RefCell}; | 3 | use core::cell::{Cell, RefCell}; |
| 4 | use core::future::poll_fn; | 4 | use core::future::{poll_fn, Future}; |
| 5 | use core::mem::{self, MaybeUninit}; | 5 | use core::mem::{self, MaybeUninit}; |
| 6 | use core::sync::atomic::{AtomicBool, Ordering}; | 6 | use core::sync::atomic::{AtomicBool, Ordering}; |
| 7 | use core::task::Poll; | 7 | use core::task::Poll; |
| @@ -108,7 +108,7 @@ impl Default for ControlShared { | |||
| 108 | } | 108 | } |
| 109 | 109 | ||
| 110 | impl ControlShared { | 110 | impl ControlShared { |
| 111 | async fn changed(&self) { | 111 | fn changed(&self) -> impl Future<Output = ()> + '_ { |
| 112 | poll_fn(|cx| { | 112 | poll_fn(|cx| { |
| 113 | if self.changed.load(Ordering::Relaxed) { | 113 | if self.changed.load(Ordering::Relaxed) { |
| 114 | self.changed.store(false, Ordering::Relaxed); | 114 | self.changed.store(false, Ordering::Relaxed); |
| @@ -118,7 +118,6 @@ impl ControlShared { | |||
| 118 | Poll::Pending | 118 | Poll::Pending |
| 119 | } | 119 | } |
| 120 | }) | 120 | }) |
| 121 | .await; | ||
| 122 | } | 121 | } |
| 123 | } | 122 | } |
| 124 | 123 | ||
diff --git a/embassy-usb/src/class/uac1/speaker.rs b/embassy-usb/src/class/uac1/speaker.rs index 6c3a4e378..25de25d9c 100644 --- a/embassy-usb/src/class/uac1/speaker.rs +++ b/embassy-usb/src/class/uac1/speaker.rs | |||
| @@ -11,7 +11,7 @@ | |||
| 11 | //! The class provides volume and mute controls for each channel. | 11 | //! The class provides volume and mute controls for each channel. |
| 12 | 12 | ||
| 13 | use core::cell::{Cell, RefCell}; | 13 | use core::cell::{Cell, RefCell}; |
| 14 | use core::future::poll_fn; | 14 | use core::future::{poll_fn, Future}; |
| 15 | use core::marker::PhantomData; | 15 | use core::marker::PhantomData; |
| 16 | use core::sync::atomic::{AtomicBool, AtomicU32, Ordering}; | 16 | use core::sync::atomic::{AtomicBool, AtomicU32, Ordering}; |
| 17 | use core::task::Poll; | 17 | use core::task::Poll; |
| @@ -389,7 +389,7 @@ impl<'d> Default for SharedControl<'d> { | |||
| 389 | } | 389 | } |
| 390 | 390 | ||
| 391 | impl<'d> SharedControl<'d> { | 391 | impl<'d> SharedControl<'d> { |
| 392 | async fn changed(&self) { | 392 | fn changed(&self) -> impl Future<Output = ()> + '_ { |
| 393 | poll_fn(|context| { | 393 | poll_fn(|context| { |
| 394 | if self.changed.load(Ordering::Relaxed) { | 394 | if self.changed.load(Ordering::Relaxed) { |
| 395 | self.changed.store(false, Ordering::Relaxed); | 395 | self.changed.store(false, Ordering::Relaxed); |
| @@ -399,7 +399,6 @@ impl<'d> SharedControl<'d> { | |||
| 399 | Poll::Pending | 399 | Poll::Pending |
| 400 | } | 400 | } |
| 401 | }) | 401 | }) |
| 402 | .await; | ||
| 403 | } | 402 | } |
| 404 | } | 403 | } |
| 405 | 404 | ||
