diff options
| author | Dario Nieuwenhuis <[email protected]> | 2022-03-30 01:18:37 +0200 |
|---|---|---|
| committer | Dario Nieuwenhuis <[email protected]> | 2022-04-06 05:38:11 +0200 |
| commit | d1e4b3d7d5a931cd6e04b7e2fe467945ef862477 (patch) | |
| tree | efe3199292133306c20b27da7442cadf8592f3b4 /embassy-nrf/src | |
| parent | c06488eb2978d9eaa8dc6a2669a6ce279638f4b2 (diff) | |
usb: add -usb-serial crate, fix warnings and stable build.
Diffstat (limited to 'embassy-nrf/src')
| -rw-r--r-- | embassy-nrf/src/chips/nrf52820.rs | 1 | ||||
| -rw-r--r-- | embassy-nrf/src/chips/nrf52833.rs | 1 | ||||
| -rw-r--r-- | embassy-nrf/src/chips/nrf52840.rs | 1 | ||||
| -rw-r--r-- | embassy-nrf/src/chips/nrf5340_app.rs | 1 | ||||
| -rw-r--r-- | embassy-nrf/src/lib.rs | 1 | ||||
| -rw-r--r-- | embassy-nrf/src/usb.rs | 11 |
6 files changed, 12 insertions, 4 deletions
diff --git a/embassy-nrf/src/chips/nrf52820.rs b/embassy-nrf/src/chips/nrf52820.rs index aa2b2e61d..136ef4ec9 100644 --- a/embassy-nrf/src/chips/nrf52820.rs +++ b/embassy-nrf/src/chips/nrf52820.rs | |||
| @@ -125,6 +125,7 @@ embassy_hal_common::peripherals! { | |||
| 125 | TEMP, | 125 | TEMP, |
| 126 | } | 126 | } |
| 127 | 127 | ||
| 128 | #[cfg(feature = "nightly")] | ||
| 128 | impl_usb!(USBD, USBD, USBD); | 129 | impl_usb!(USBD, USBD, USBD); |
| 129 | 130 | ||
| 130 | impl_uarte!(UARTE0, UARTE0, UARTE0_UART0); | 131 | impl_uarte!(UARTE0, UARTE0, UARTE0_UART0); |
diff --git a/embassy-nrf/src/chips/nrf52833.rs b/embassy-nrf/src/chips/nrf52833.rs index 498a3c307..35cf4224d 100644 --- a/embassy-nrf/src/chips/nrf52833.rs +++ b/embassy-nrf/src/chips/nrf52833.rs | |||
| @@ -157,6 +157,7 @@ embassy_hal_common::peripherals! { | |||
| 157 | TEMP, | 157 | TEMP, |
| 158 | } | 158 | } |
| 159 | 159 | ||
| 160 | #[cfg(feature = "nightly")] | ||
| 160 | impl_usb!(USBD, USBD, USBD); | 161 | impl_usb!(USBD, USBD, USBD); |
| 161 | 162 | ||
| 162 | impl_uarte!(UARTE0, UARTE0, UARTE0_UART0); | 163 | impl_uarte!(UARTE0, UARTE0, UARTE0_UART0); |
diff --git a/embassy-nrf/src/chips/nrf52840.rs b/embassy-nrf/src/chips/nrf52840.rs index 411768146..d20abbfbd 100644 --- a/embassy-nrf/src/chips/nrf52840.rs +++ b/embassy-nrf/src/chips/nrf52840.rs | |||
| @@ -160,6 +160,7 @@ embassy_hal_common::peripherals! { | |||
| 160 | TEMP, | 160 | TEMP, |
| 161 | } | 161 | } |
| 162 | 162 | ||
| 163 | #[cfg(feature = "nightly")] | ||
| 163 | impl_usb!(USBD, USBD, USBD); | 164 | impl_usb!(USBD, USBD, USBD); |
| 164 | 165 | ||
| 165 | impl_uarte!(UARTE0, UARTE0, UARTE0_UART0); | 166 | impl_uarte!(UARTE0, UARTE0, UARTE0_UART0); |
diff --git a/embassy-nrf/src/chips/nrf5340_app.rs b/embassy-nrf/src/chips/nrf5340_app.rs index ae6887b3c..89579b69f 100644 --- a/embassy-nrf/src/chips/nrf5340_app.rs +++ b/embassy-nrf/src/chips/nrf5340_app.rs | |||
| @@ -348,6 +348,7 @@ embassy_hal_common::peripherals! { | |||
| 348 | P1_15, | 348 | P1_15, |
| 349 | } | 349 | } |
| 350 | 350 | ||
| 351 | #[cfg(feature = "nightly")] | ||
| 351 | impl_usb!(USBD, USBD, USBD); | 352 | impl_usb!(USBD, USBD, USBD); |
| 352 | 353 | ||
| 353 | impl_uarte!(UARTETWISPI0, UARTE0, SERIAL0); | 354 | impl_uarte!(UARTETWISPI0, UARTE0, SERIAL0); |
diff --git a/embassy-nrf/src/lib.rs b/embassy-nrf/src/lib.rs index 06e8235e3..667e8ea38 100644 --- a/embassy-nrf/src/lib.rs +++ b/embassy-nrf/src/lib.rs | |||
| @@ -91,6 +91,7 @@ pub mod uarte; | |||
| 91 | feature = "nrf52833", | 91 | feature = "nrf52833", |
| 92 | feature = "nrf52840" | 92 | feature = "nrf52840" |
| 93 | ))] | 93 | ))] |
| 94 | #[cfg(feature = "nightly")] | ||
| 94 | pub mod usb; | 95 | pub mod usb; |
| 95 | #[cfg(not(feature = "_nrf5340"))] | 96 | #[cfg(not(feature = "_nrf5340"))] |
| 96 | pub mod wdt; | 97 | pub mod wdt; |
diff --git a/embassy-nrf/src/usb.rs b/embassy-nrf/src/usb.rs index 1cd5a9ebb..b26e40272 100644 --- a/embassy-nrf/src/usb.rs +++ b/embassy-nrf/src/usb.rs | |||
| @@ -4,6 +4,7 @@ use core::marker::PhantomData; | |||
| 4 | use core::mem::MaybeUninit; | 4 | use core::mem::MaybeUninit; |
| 5 | use core::sync::atomic::{compiler_fence, AtomicU32, Ordering}; | 5 | use core::sync::atomic::{compiler_fence, AtomicU32, Ordering}; |
| 6 | use core::task::Poll; | 6 | use core::task::Poll; |
| 7 | use cortex_m::peripheral::NVIC; | ||
| 7 | use embassy::interrupt::InterruptExt; | 8 | use embassy::interrupt::InterruptExt; |
| 8 | use embassy::time::{with_timeout, Duration}; | 9 | use embassy::time::{with_timeout, Duration}; |
| 9 | use embassy::util::Unborrow; | 10 | use embassy::util::Unborrow; |
| @@ -14,7 +15,6 @@ use embassy_usb::driver::{self, Event, ReadError, WriteError}; | |||
| 14 | use embassy_usb::types::{EndpointAddress, EndpointInfo, EndpointType, UsbDirection}; | 15 | use embassy_usb::types::{EndpointAddress, EndpointInfo, EndpointType, UsbDirection}; |
| 15 | use futures::future::poll_fn; | 16 | use futures::future::poll_fn; |
| 16 | use futures::Future; | 17 | use futures::Future; |
| 17 | use pac::NVIC; | ||
| 18 | 18 | ||
| 19 | pub use embassy_usb; | 19 | pub use embassy_usb; |
| 20 | 20 | ||
| @@ -617,7 +617,7 @@ impl<'d, T: Instance> driver::ControlPipe for ControlPipe<'d, T> { | |||
| 617 | fn data_out<'a>(&'a mut self, buf: &'a mut [u8]) -> Self::DataOutFuture<'a> { | 617 | fn data_out<'a>(&'a mut self, buf: &'a mut [u8]) -> Self::DataOutFuture<'a> { |
| 618 | async move { | 618 | async move { |
| 619 | let req = self.request.unwrap(); | 619 | let req = self.request.unwrap(); |
| 620 | assert_eq!(req.direction, UsbDirection::Out); | 620 | assert!(req.direction == UsbDirection::Out); |
| 621 | assert!(req.length > 0); | 621 | assert!(req.length > 0); |
| 622 | 622 | ||
| 623 | let req_length = usize::from(req.length); | 623 | let req_length = usize::from(req.length); |
| @@ -644,9 +644,12 @@ impl<'d, T: Instance> driver::ControlPipe for ControlPipe<'d, T> { | |||
| 644 | 644 | ||
| 645 | fn accept_in<'a>(&'a mut self, buf: &'a [u8]) -> Self::AcceptInFuture<'a> { | 645 | fn accept_in<'a>(&'a mut self, buf: &'a [u8]) -> Self::AcceptInFuture<'a> { |
| 646 | async move { | 646 | async move { |
| 647 | info!("control accept {=[u8]:x}", buf); | 647 | #[cfg(feature = "defmt")] |
| 648 | info!("control accept {:x}", buf); | ||
| 649 | #[cfg(not(feature = "defmt"))] | ||
| 650 | info!("control accept {:x?}", buf); | ||
| 648 | let req = self.request.unwrap(); | 651 | let req = self.request.unwrap(); |
| 649 | assert_eq!(req.direction, UsbDirection::In); | 652 | assert!(req.direction == UsbDirection::In); |
| 650 | 653 | ||
| 651 | let req_len = usize::from(req.length); | 654 | let req_len = usize::from(req.length); |
| 652 | let len = buf.len().min(req_len); | 655 | let len = buf.len().min(req_len); |
