diff options
| -rw-r--r-- | embassy-net-driver-channel/src/lib.rs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/embassy-net-driver-channel/src/lib.rs b/embassy-net-driver-channel/src/lib.rs index 076238ba0..f23c04416 100644 --- a/embassy-net-driver-channel/src/lib.rs +++ b/embassy-net-driver-channel/src/lib.rs | |||
| @@ -8,6 +8,7 @@ use core::cell::RefCell; | |||
| 8 | use core::mem::MaybeUninit; | 8 | use core::mem::MaybeUninit; |
| 9 | use core::task::{Context, Poll}; | 9 | use core::task::{Context, Poll}; |
| 10 | 10 | ||
| 11 | use driver::HardwareAddress; | ||
| 11 | pub use embassy_net_driver as driver; | 12 | pub use embassy_net_driver as driver; |
| 12 | use embassy_net_driver::{Capabilities, LinkState, Medium}; | 13 | use embassy_net_driver::{Capabilities, LinkState, Medium}; |
| 13 | use embassy_sync::blocking_mutex::raw::NoopRawMutex; | 14 | use embassy_sync::blocking_mutex::raw::NoopRawMutex; |
| @@ -218,7 +219,11 @@ pub fn new<'d, const MTU: usize, const N_RX: usize, const N_TX: usize>( | |||
| 218 | ) -> (Runner<'d, MTU>, Device<'d, MTU>) { | 219 | ) -> (Runner<'d, MTU>, Device<'d, MTU>) { |
| 219 | let mut caps = Capabilities::default(); | 220 | let mut caps = Capabilities::default(); |
| 220 | caps.max_transmission_unit = MTU; | 221 | caps.max_transmission_unit = MTU; |
| 221 | caps.medium = Medium::Ethernet; | 222 | caps.medium = match &hardware_address { |
| 223 | HardwareAddress::Ethernet(_) => Medium::Ethernet, | ||
| 224 | HardwareAddress::Ieee802154(_) => Medium::Ieee802154, | ||
| 225 | HardwareAddress::Ip => Medium::Ip, | ||
| 226 | }; | ||
| 222 | 227 | ||
| 223 | // safety: this is a self-referential struct, however: | 228 | // safety: this is a self-referential struct, however: |
| 224 | // - it can't move while the `'d` borrow is active. | 229 | // - it can't move while the `'d` borrow is active. |
