aboutsummaryrefslogtreecommitdiff
path: root/embassy-usb/src
diff options
context:
space:
mode:
Diffstat (limited to 'embassy-usb/src')
-rw-r--r--embassy-usb/src/class/cdc_ncm/embassy_net.rs14
-rw-r--r--embassy-usb/src/class/cdc_ncm/mod.rs1
2 files changed, 7 insertions, 8 deletions
diff --git a/embassy-usb/src/class/cdc_ncm/embassy_net.rs b/embassy-usb/src/class/cdc_ncm/embassy_net.rs
index 60bbfd8d4..093afeff9 100644
--- a/embassy-usb/src/class/cdc_ncm/embassy_net.rs
+++ b/embassy-usb/src/class/cdc_ncm/embassy_net.rs
@@ -3,7 +3,7 @@ use core::mem::MaybeUninit;
3use core::task::Context; 3use core::task::Context;
4 4
5use embassy_futures::select::{select, Either}; 5use embassy_futures::select::{select, Either};
6use embassy_net::device::{Device as DeviceTrait, DeviceCapabilities, LinkState, Medium}; 6use embassy_net_driver::{Capabilities, LinkState, Medium};
7use embassy_sync::blocking_mutex::raw::NoopRawMutex; 7use embassy_sync::blocking_mutex::raw::NoopRawMutex;
8use embassy_sync::blocking_mutex::Mutex; 8use embassy_sync::blocking_mutex::Mutex;
9use embassy_sync::waitqueue::WakerRegistration; 9use embassy_sync::waitqueue::WakerRegistration;
@@ -108,7 +108,7 @@ impl<'d, D: Driver<'d>> CdcNcmClass<'d, D> {
108 ) -> (Runner<'d, D, MTU>, Device<'d, MTU>) { 108 ) -> (Runner<'d, D, MTU>, Device<'d, MTU>) {
109 let (tx_usb, rx_usb) = self.split(); 109 let (tx_usb, rx_usb) = self.split();
110 110
111 let mut caps = DeviceCapabilities::default(); 111 let mut caps = Capabilities::default();
112 caps.max_transmission_unit = 1514; // 1500 IP + 14 ethernet header 112 caps.max_transmission_unit = 1514; // 1500 IP + 14 ethernet header
113 caps.medium = Medium::Ethernet; 113 caps.medium = Medium::Ethernet;
114 114
@@ -158,11 +158,11 @@ pub struct Device<'d, const MTU: usize> {
158 rx: zerocopy_channel::Receiver<'d, NoopRawMutex, PacketBuf<MTU>>, 158 rx: zerocopy_channel::Receiver<'d, NoopRawMutex, PacketBuf<MTU>>,
159 tx: zerocopy_channel::Sender<'d, NoopRawMutex, PacketBuf<MTU>>, 159 tx: zerocopy_channel::Sender<'d, NoopRawMutex, PacketBuf<MTU>>,
160 link_state: &'d Mutex<NoopRawMutex, RefCell<LinkStateState>>, 160 link_state: &'d Mutex<NoopRawMutex, RefCell<LinkStateState>>,
161 caps: DeviceCapabilities, 161 caps: Capabilities,
162 ethernet_address: [u8; 6], 162 ethernet_address: [u8; 6],
163} 163}
164 164
165impl<'d, const MTU: usize> DeviceTrait for Device<'d, MTU> { 165impl<'d, const MTU: usize> embassy_net_driver::Driver for Device<'d, MTU> {
166 type RxToken<'a> = RxToken<'a, MTU> where Self: 'a ; 166 type RxToken<'a> = RxToken<'a, MTU> where Self: 'a ;
167 type TxToken<'a> = TxToken<'a, MTU> where Self: 'a ; 167 type TxToken<'a> = TxToken<'a, MTU> where Self: 'a ;
168 168
@@ -184,7 +184,7 @@ impl<'d, const MTU: usize> DeviceTrait for Device<'d, MTU> {
184 } 184 }
185 185
186 /// Get a description of device capabilities. 186 /// Get a description of device capabilities.
187 fn capabilities(&self) -> DeviceCapabilities { 187 fn capabilities(&self) -> Capabilities {
188 self.caps.clone() 188 self.caps.clone()
189 } 189 }
190 190
@@ -205,7 +205,7 @@ pub struct RxToken<'a, const MTU: usize> {
205 rx: zerocopy_channel::Receiver<'a, NoopRawMutex, PacketBuf<MTU>>, 205 rx: zerocopy_channel::Receiver<'a, NoopRawMutex, PacketBuf<MTU>>,
206} 206}
207 207
208impl<'a, const MTU: usize> embassy_net::device::RxToken for RxToken<'a, MTU> { 208impl<'a, const MTU: usize> embassy_net_driver::RxToken for RxToken<'a, MTU> {
209 fn consume<R, F>(mut self, f: F) -> R 209 fn consume<R, F>(mut self, f: F) -> R
210 where 210 where
211 F: FnOnce(&mut [u8]) -> R, 211 F: FnOnce(&mut [u8]) -> R,
@@ -222,7 +222,7 @@ pub struct TxToken<'a, const MTU: usize> {
222 tx: zerocopy_channel::Sender<'a, NoopRawMutex, PacketBuf<MTU>>, 222 tx: zerocopy_channel::Sender<'a, NoopRawMutex, PacketBuf<MTU>>,
223} 223}
224 224
225impl<'a, const MTU: usize> embassy_net::device::TxToken for TxToken<'a, MTU> { 225impl<'a, const MTU: usize> embassy_net_driver::TxToken for TxToken<'a, MTU> {
226 fn consume<R, F>(mut self, len: usize, f: F) -> R 226 fn consume<R, F>(mut self, len: usize, f: F) -> R
227 where 227 where
228 F: FnOnce(&mut [u8]) -> R, 228 F: FnOnce(&mut [u8]) -> R,
diff --git a/embassy-usb/src/class/cdc_ncm/mod.rs b/embassy-usb/src/class/cdc_ncm/mod.rs
index 2ee47f68c..4954a65bc 100644
--- a/embassy-usb/src/class/cdc_ncm/mod.rs
+++ b/embassy-usb/src/class/cdc_ncm/mod.rs
@@ -21,7 +21,6 @@ use crate::driver::{Driver, Endpoint, EndpointError, EndpointIn, EndpointOut};
21use crate::types::*; 21use crate::types::*;
22use crate::Builder; 22use crate::Builder;
23 23
24#[cfg(feature = "embassy-net")]
25pub mod embassy_net; 24pub mod embassy_net;
26 25
27/// This should be used as `device_class` when building the `UsbDevice`. 26/// This should be used as `device_class` when building the `UsbDevice`.