wpan: further optimize mac event

This commit is contained in:
xoviat
2023-07-20 16:45:04 -05:00
parent 02d57afd51
commit 809d3476aa
8 changed files with 86 additions and 140 deletions

View File

@ -73,10 +73,7 @@ async fn main(spawner: Spawner) {
})
.await
.unwrap();
{
let evt = mbox.mac_subsystem.read().await.unwrap();
defmt::info!("{:#x}", *evt);
}
defmt::info!("{:#x}", mbox.mac_subsystem.read().await.unwrap());
info!("setting extended address");
let extended_address: u64 = 0xACDE480000000001;
@ -87,10 +84,7 @@ async fn main(spawner: Spawner) {
})
.await
.unwrap();
{
let evt = mbox.mac_subsystem.read().await.unwrap();
defmt::info!("{:#x}", *evt);
}
defmt::info!("{:#x}", mbox.mac_subsystem.read().await.unwrap());
info!("setting short address");
let short_address: u16 = 0x1122;
@ -101,10 +95,7 @@ async fn main(spawner: Spawner) {
})
.await
.unwrap();
{
let evt = mbox.mac_subsystem.read().await.unwrap();
defmt::info!("{:#x}", *evt);
}
defmt::info!("{:#x}", mbox.mac_subsystem.read().await.unwrap());
info!("setting association permit");
let association_permit: bool = true;
@ -115,10 +106,7 @@ async fn main(spawner: Spawner) {
})
.await
.unwrap();
{
let evt = mbox.mac_subsystem.read().await.unwrap();
defmt::info!("{:#x}", *evt);
}
defmt::info!("{:#x}", mbox.mac_subsystem.read().await.unwrap());
info!("setting TX power");
let transmit_power: i8 = 2;
@ -129,10 +117,7 @@ async fn main(spawner: Spawner) {
})
.await
.unwrap();
{
let evt = mbox.mac_subsystem.read().await.unwrap();
defmt::info!("{:#x}", *evt);
}
defmt::info!("{:#x}", mbox.mac_subsystem.read().await.unwrap());
info!("starting FFD device");
mbox.mac_subsystem
@ -147,10 +132,7 @@ async fn main(spawner: Spawner) {
})
.await
.unwrap();
{
let evt = mbox.mac_subsystem.read().await.unwrap();
defmt::info!("{:#x}", *evt);
}
defmt::info!("{:#x}", mbox.mac_subsystem.read().await.unwrap());
info!("setting RX on when idle");
let rx_on_while_idle: bool = true;
@ -161,18 +143,15 @@ async fn main(spawner: Spawner) {
})
.await
.unwrap();
{
let evt = mbox.mac_subsystem.read().await.unwrap();
defmt::info!("{:#x}", *evt);
}
defmt::info!("{:#x}", mbox.mac_subsystem.read().await.unwrap());
loop {
let evt = mbox.mac_subsystem.read().await;
if let Ok(evt) = evt {
defmt::info!("parsed mac event");
defmt::info!("{:#x}", *evt);
defmt::info!("{:#x}", evt);
match *evt {
match evt {
MacEvent::MlmeAssociateInd(association) => mbox
.mac_subsystem
.send_command(&AssociateResponse {

View File

@ -79,10 +79,7 @@ async fn main(spawner: Spawner) {
})
.await
.unwrap();
{
let evt = mbox.mac_subsystem.read().await.unwrap();
defmt::info!("{:#x}", *evt);
}
defmt::info!("{:#x}", mbox.mac_subsystem.read().await.unwrap());
info!("setting extended address");
let extended_address: u64 = 0xACDE480000000001;
@ -93,10 +90,7 @@ async fn main(spawner: Spawner) {
})
.await
.unwrap();
{
let evt = mbox.mac_subsystem.read().await.unwrap();
defmt::info!("{:#x}", *evt);
}
defmt::info!("{:#x}", mbox.mac_subsystem.read().await.unwrap());
info!("setting short address");
let short_address: u16 = 0x1122;
@ -107,10 +101,7 @@ async fn main(spawner: Spawner) {
})
.await
.unwrap();
{
let evt = mbox.mac_subsystem.read().await.unwrap();
defmt::info!("{:#x}", *evt);
}
defmt::info!("{:#x}", mbox.mac_subsystem.read().await.unwrap());
info!("setting association permit");
let association_permit: bool = true;
@ -121,10 +112,7 @@ async fn main(spawner: Spawner) {
})
.await
.unwrap();
{
let evt = mbox.mac_subsystem.read().await.unwrap();
defmt::info!("{:#x}", *evt);
}
defmt::info!("{:#x}", mbox.mac_subsystem.read().await.unwrap());
info!("setting TX power");
let transmit_power: i8 = 2;
@ -135,10 +123,7 @@ async fn main(spawner: Spawner) {
})
.await
.unwrap();
{
let evt = mbox.mac_subsystem.read().await.unwrap();
defmt::info!("{:#x}", *evt);
}
defmt::info!("{:#x}", mbox.mac_subsystem.read().await.unwrap());
info!("starting FFD device");
mbox.mac_subsystem
@ -153,10 +138,7 @@ async fn main(spawner: Spawner) {
})
.await
.unwrap();
{
let evt = mbox.mac_subsystem.read().await.unwrap();
defmt::info!("{:#x}", *evt);
}
defmt::info!("{:#x}", mbox.mac_subsystem.read().await.unwrap());
info!("setting RX on when idle");
let rx_on_while_idle: bool = true;
@ -167,10 +149,7 @@ async fn main(spawner: Spawner) {
})
.await
.unwrap();
{
let evt = mbox.mac_subsystem.read().await.unwrap();
defmt::info!("{:#x}", *evt);
}
defmt::info!("{:#x}", mbox.mac_subsystem.read().await.unwrap());
let tx_queue = [
make_static!([0u8; 127]),

View File

@ -75,10 +75,7 @@ async fn main(spawner: Spawner) {
})
.await
.unwrap();
{
let evt = mbox.mac_subsystem.read().await.unwrap();
defmt::info!("{:#x}", *evt);
}
defmt::info!("{:#x}", mbox.mac_subsystem.read().await.unwrap());
info!("setting extended address");
let extended_address: u64 = 0xACDE480000000002;
@ -89,10 +86,7 @@ async fn main(spawner: Spawner) {
})
.await
.unwrap();
{
let evt = mbox.mac_subsystem.read().await.unwrap();
defmt::info!("{:#x}", *evt);
}
defmt::info!("{:#x}", mbox.mac_subsystem.read().await.unwrap());
info!("getting extended address");
mbox.mac_subsystem
@ -105,9 +99,9 @@ async fn main(spawner: Spawner) {
{
let evt = mbox.mac_subsystem.read().await.unwrap();
info!("{:#x}", *evt);
info!("{:#x}", evt);
if let MacEvent::MlmeGetCnf(evt) = *evt {
if let MacEvent::MlmeGetCnf(evt) = evt {
if evt.pib_attribute_value_len == 8 {
let value = unsafe { core::ptr::read_unaligned(evt.pib_attribute_value_ptr as *const u64) };
@ -133,9 +127,9 @@ async fn main(spawner: Spawner) {
mbox.mac_subsystem.send_command(&a).await.unwrap();
let short_addr = {
let evt = mbox.mac_subsystem.read().await.unwrap();
info!("{:#x}", *evt);
info!("{:#x}", evt);
if let MacEvent::MlmeAssociateCnf(conf) = *evt {
if let MacEvent::MlmeAssociateCnf(conf) = evt {
conf.assoc_short_address
} else {
defmt::panic!()
@ -152,7 +146,7 @@ async fn main(spawner: Spawner) {
.unwrap();
{
let evt = mbox.mac_subsystem.read().await.unwrap();
info!("{:#x}", *evt);
info!("{:#x}", evt);
}
info!("sending data");
@ -176,12 +170,12 @@ async fn main(spawner: Spawner) {
.unwrap();
{
let evt = mbox.mac_subsystem.read().await.unwrap();
info!("{:#x}", *evt);
info!("{:#x}", evt);
}
loop {
match mbox.mac_subsystem.read().await {
Ok(evt) => info!("{:#x}", *evt),
Ok(evt) => info!("{:#x}", evt),
_ => continue,
};
}