aboutsummaryrefslogtreecommitdiff
path: root/embassy-net-driver-channel/src/lib.rs
diff options
context:
space:
mode:
authorRuben De Smet <[email protected]>2023-07-28 16:19:24 +0200
committerRuben De Smet <[email protected]>2023-07-28 16:40:15 +0200
commit69c0a89aa5d52e048fdd8ddc5d47b767da07e88b (patch)
treee8eb364418ae00d46f2b4163b6c0bd8fff6306fc /embassy-net-driver-channel/src/lib.rs
parentc3ba08ffb6570589726db44d40ba5b724a8950d4 (diff)
Use HardwareAddress in Driver
Diffstat (limited to 'embassy-net-driver-channel/src/lib.rs')
-rw-r--r--embassy-net-driver-channel/src/lib.rs23
1 files changed, 5 insertions, 18 deletions
diff --git a/embassy-net-driver-channel/src/lib.rs b/embassy-net-driver-channel/src/lib.rs
index e101bf38a..53b66afba 100644
--- a/embassy-net-driver-channel/src/lib.rs
+++ b/embassy-net-driver-channel/src/lib.rs
@@ -42,8 +42,7 @@ struct StateInner<'d, const MTU: usize> {
42struct Shared { 42struct Shared {
43 link_state: LinkState, 43 link_state: LinkState,
44 waker: WakerRegistration, 44 waker: WakerRegistration,
45 ethernet_address: [u8; 6], 45 hardware_address: HardwareAddress,
46 ieee802154_address: [u8; 8],
47} 46}
48 47
49pub struct Runner<'d, const MTU: usize> { 48pub struct Runner<'d, const MTU: usize> {
@@ -86,18 +85,10 @@ impl<'d, const MTU: usize> Runner<'d, MTU> {
86 }); 85 });
87 } 86 }
88 87
89 pub fn set_ethernet_address(&mut self, address: [u8; 6]) { 88 pub fn set_hardware_address(&mut self, address: HardwareAddress) {
90 self.shared.lock(|s| { 89 self.shared.lock(|s| {
91 let s = &mut *s.borrow_mut(); 90 let s = &mut *s.borrow_mut();
92 s.ethernet_address = address; 91 s.hardware_address = address;
93 s.waker.wake();
94 });
95 }
96
97 pub fn set_ieee802154_address(&mut self, address: [u8; 8]) {
98 self.shared.lock(|s| {
99 let s = &mut *s.borrow_mut();
100 s.ieee802154_address = address;
101 s.waker.wake(); 92 s.waker.wake();
102 }); 93 });
103 } 94 }
@@ -300,12 +291,8 @@ impl<'d, const MTU: usize> embassy_net_driver::Driver for Device<'d, MTU> {
300 self.caps.clone() 291 self.caps.clone()
301 } 292 }
302 293
303 fn ethernet_address(&self) -> [u8; 6] { 294 fn hardware_address(&self) -> HardwareAddress {
304 self.shared.lock(|s| s.borrow().ethernet_address) 295 self.shared.lock(|s| s.borrow().hardware_address)
305 }
306
307 fn ieee802154_address(&self) -> [u8; 8] {
308 self.shared.lock(|s| s.borrow().ieee802154_address)
309 } 296 }
310 297
311 fn link_state(&mut self, cx: &mut Context) -> LinkState { 298 fn link_state(&mut self, cx: &mut Context) -> LinkState {