aboutsummaryrefslogtreecommitdiff
path: root/embassy-net/src
diff options
context:
space:
mode:
Diffstat (limited to 'embassy-net/src')
-rw-r--r--embassy-net/src/config/dhcp.rs1
-rw-r--r--embassy-net/src/config/mod.rs1
-rw-r--r--embassy-net/src/config/statik.rs1
-rw-r--r--embassy-net/src/device.rs1
-rw-r--r--embassy-net/src/fmt.rs205
-rw-r--r--embassy-net/src/stack.rs1
-rw-r--r--embassy-net/src/tcp_socket.rs1
7 files changed, 156 insertions, 55 deletions
diff --git a/embassy-net/src/config/dhcp.rs b/embassy-net/src/config/dhcp.rs
index f0c144321..8bbcd8176 100644
--- a/embassy-net/src/config/dhcp.rs
+++ b/embassy-net/src/config/dhcp.rs
@@ -4,7 +4,6 @@ use smoltcp::time::Instant;
4 4
5use super::*; 5use super::*;
6use crate::device::LinkState; 6use crate::device::LinkState;
7use crate::fmt::*;
8use crate::{Interface, SocketSet}; 7use crate::{Interface, SocketSet};
9 8
10pub struct DhcpConfigurator { 9pub struct DhcpConfigurator {
diff --git a/embassy-net/src/config/mod.rs b/embassy-net/src/config/mod.rs
index 94725dba6..0f1886ae8 100644
--- a/embassy-net/src/config/mod.rs
+++ b/embassy-net/src/config/mod.rs
@@ -2,7 +2,6 @@ use heapless::Vec;
2use smoltcp::time::Instant; 2use smoltcp::time::Instant;
3use smoltcp::wire::{Ipv4Address, Ipv4Cidr}; 3use smoltcp::wire::{Ipv4Address, Ipv4Cidr};
4 4
5use crate::fmt::*;
6use crate::{Interface, SocketSet}; 5use crate::{Interface, SocketSet};
7 6
8mod statik; 7mod statik;
diff --git a/embassy-net/src/config/statik.rs b/embassy-net/src/config/statik.rs
index 912143bff..9a530717b 100644
--- a/embassy-net/src/config/statik.rs
+++ b/embassy-net/src/config/statik.rs
@@ -1,7 +1,6 @@
1use smoltcp::time::Instant; 1use smoltcp::time::Instant;
2 2
3use super::*; 3use super::*;
4use crate::fmt::*;
5use crate::{Interface, SocketSet}; 4use crate::{Interface, SocketSet};
6 5
7pub struct StaticConfigurator { 6pub struct StaticConfigurator {
diff --git a/embassy-net/src/device.rs b/embassy-net/src/device.rs
index 6c06b0605..5fcb94ac8 100644
--- a/embassy-net/src/device.rs
+++ b/embassy-net/src/device.rs
@@ -3,7 +3,6 @@ use smoltcp::phy::Device as SmolDevice;
3use smoltcp::phy::DeviceCapabilities; 3use smoltcp::phy::DeviceCapabilities;
4use smoltcp::time::Instant as SmolInstant; 4use smoltcp::time::Instant as SmolInstant;
5 5
6use crate::fmt::*;
7use crate::packet_pool::PacketBoxExt; 6use crate::packet_pool::PacketBoxExt;
8use crate::Result; 7use crate::Result;
9use crate::{Packet, PacketBox, PacketBuf}; 8use crate::{Packet, PacketBox, PacketBuf};
diff --git a/embassy-net/src/fmt.rs b/embassy-net/src/fmt.rs
index 4da69766c..066970813 100644
--- a/embassy-net/src/fmt.rs
+++ b/embassy-net/src/fmt.rs
@@ -1,74 +1,181 @@
1#![macro_use] 1#![macro_use]
2#![allow(unused_macros)]
2 3
3#[cfg(all(feature = "defmt", feature = "log"))] 4#[cfg(all(feature = "defmt", feature = "log"))]
4compile_error!("You may not enable both `defmt` and `log` features."); 5compile_error!("You may not enable both `defmt` and `log` features.");
5 6
6pub use fmt::*; 7macro_rules! assert {
8 ($($x:tt)*) => {
9 {
10 #[cfg(not(feature = "defmt"))]
11 ::core::assert!($($x)*);
12 #[cfg(feature = "defmt")]
13 ::defmt::assert!($($x)*);
14 }
15 };
16}
7 17
8#[cfg(feature = "defmt")] 18macro_rules! assert_eq {
9mod fmt { 19 ($($x:tt)*) => {
10 pub use defmt::{ 20 {
11 assert, assert_eq, assert_ne, debug, debug_assert, debug_assert_eq, debug_assert_ne, error, 21 #[cfg(not(feature = "defmt"))]
12 info, panic, todo, trace, unreachable, unwrap, warn, 22 ::core::assert_eq!($($x)*);
23 #[cfg(feature = "defmt")]
24 ::defmt::assert_eq!($($x)*);
25 }
13 }; 26 };
14} 27}
15 28
16#[cfg(feature = "log")] 29macro_rules! assert_ne {
17mod fmt { 30 ($($x:tt)*) => {
18 pub use core::{ 31 {
19 assert, assert_eq, assert_ne, debug_assert, debug_assert_eq, debug_assert_ne, panic, todo, 32 #[cfg(not(feature = "defmt"))]
20 unreachable, 33 ::core::assert_ne!($($x)*);
34 #[cfg(feature = "defmt")]
35 ::defmt::assert_ne!($($x)*);
36 }
21 }; 37 };
22 pub use log::{debug, error, info, trace, warn};
23} 38}
24 39
25#[cfg(not(any(feature = "defmt", feature = "log")))] 40macro_rules! debug_assert {
26mod fmt { 41 ($($x:tt)*) => {
27 #![macro_use] 42 {
43 #[cfg(not(feature = "defmt"))]
44 ::core::debug_assert!($($x)*);
45 #[cfg(feature = "defmt")]
46 ::defmt::debug_assert!($($x)*);
47 }
48 };
49}
28 50
29 pub use core::{ 51macro_rules! debug_assert_eq {
30 assert, assert_eq, assert_ne, debug_assert, debug_assert_eq, debug_assert_ne, panic, todo, 52 ($($x:tt)*) => {
31 unreachable, 53 {
54 #[cfg(not(feature = "defmt"))]
55 ::core::debug_assert_eq!($($x)*);
56 #[cfg(feature = "defmt")]
57 ::defmt::debug_assert_eq!($($x)*);
58 }
32 }; 59 };
60}
33 61
34 #[macro_export] 62macro_rules! debug_assert_ne {
35 macro_rules! trace { 63 ($($x:tt)*) => {
36 ($($msg:expr),+ $(,)?) => { 64 {
37 () 65 #[cfg(not(feature = "defmt"))]
38 }; 66 ::core::debug_assert_ne!($($x)*);
39 } 67 #[cfg(feature = "defmt")]
68 ::defmt::debug_assert_ne!($($x)*);
69 }
70 };
71}
40 72
41 #[macro_export] 73macro_rules! todo {
42 macro_rules! debug { 74 ($($x:tt)*) => {
43 ($($msg:expr),+ $(,)?) => { 75 {
44 () 76 #[cfg(not(feature = "defmt"))]
45 }; 77 ::core::todo!($($x)*);
46 } 78 #[cfg(feature = "defmt")]
79 ::defmt::todo!($($x)*);
80 }
81 };
82}
47 83
48 #[macro_export] 84macro_rules! unreachable {
49 macro_rules! info { 85 ($($x:tt)*) => {
50 ($($msg:expr),+ $(,)?) => { 86 {
51 () 87 #[cfg(not(feature = "defmt"))]
52 }; 88 ::core::unreachable!($($x)*);
53 } 89 #[cfg(feature = "defmt")]
90 ::defmt::unreachable!($($x)*);
91 }
92 };
93}
54 94
55 #[macro_export] 95macro_rules! panic {
56 macro_rules! warn { 96 ($($x:tt)*) => {
57 ($($msg:expr),+ $(,)?) => { 97 {
58 () 98 #[cfg(not(feature = "defmt"))]
59 }; 99 ::core::panic!($($x)*);
60 } 100 #[cfg(feature = "defmt")]
101 ::defmt::panic!($($x)*);
102 }
103 };
104}
61 105
62 #[macro_export] 106macro_rules! trace {
63 macro_rules! error { 107 ($s:literal $(, $x:expr)* $(,)?) => {
64 ($($msg:expr),+ $(,)?) => { 108 {
65 () 109 #[cfg(feature = "log")]
66 }; 110 ::log::trace!($s $(, $x)*);
67 } 111 #[cfg(feature = "defmt")]
112 ::defmt::trace!($s $(, $x)*);
113 #[cfg(not(any(feature = "log", feature="defmt")))]
114 let _ = ($( & $x ),*);
115 }
116 };
117}
118
119macro_rules! debug {
120 ($s:literal $(, $x:expr)* $(,)?) => {
121 {
122 #[cfg(feature = "log")]
123 ::log::debug!($s $(, $x)*);
124 #[cfg(feature = "defmt")]
125 ::defmt::debug!($s $(, $x)*);
126 #[cfg(not(any(feature = "log", feature="defmt")))]
127 let _ = ($( & $x ),*);
128 }
129 };
130}
131
132macro_rules! info {
133 ($s:literal $(, $x:expr)* $(,)?) => {
134 {
135 #[cfg(feature = "log")]
136 ::log::info!($s $(, $x)*);
137 #[cfg(feature = "defmt")]
138 ::defmt::info!($s $(, $x)*);
139 #[cfg(not(any(feature = "log", feature="defmt")))]
140 let _ = ($( & $x ),*);
141 }
142 };
143}
144
145macro_rules! warn {
146 ($s:literal $(, $x:expr)* $(,)?) => {
147 {
148 #[cfg(feature = "log")]
149 ::log::warn!($s $(, $x)*);
150 #[cfg(feature = "defmt")]
151 ::defmt::warn!($s $(, $x)*);
152 #[cfg(not(any(feature = "log", feature="defmt")))]
153 let _ = ($( & $x ),*);
154 }
155 };
156}
157
158macro_rules! error {
159 ($s:literal $(, $x:expr)* $(,)?) => {
160 {
161 #[cfg(feature = "log")]
162 ::log::error!($s $(, $x)*);
163 #[cfg(feature = "defmt")]
164 ::defmt::error!($s $(, $x)*);
165 #[cfg(not(any(feature = "log", feature="defmt")))]
166 let _ = ($( & $x ),*);
167 }
168 };
169}
170
171#[cfg(feature = "defmt")]
172macro_rules! unwrap {
173 ($($x:tt)*) => {
174 ::defmt::unwrap!($($x)*)
175 };
68} 176}
69 177
70#[cfg(not(feature = "defmt"))] 178#[cfg(not(feature = "defmt"))]
71#[macro_export]
72macro_rules! unwrap { 179macro_rules! unwrap {
73 ($arg:expr) => { 180 ($arg:expr) => {
74 match $crate::fmt::Try::into_result($arg) { 181 match $crate::fmt::Try::into_result($arg) {
diff --git a/embassy-net/src/stack.rs b/embassy-net/src/stack.rs
index e436beb1e..a38f00958 100644
--- a/embassy-net/src/stack.rs
+++ b/embassy-net/src/stack.rs
@@ -20,7 +20,6 @@ use smoltcp::wire::{IpAddress, IpCidr, Ipv4Address, Ipv4Cidr};
20use crate::config::Configurator; 20use crate::config::Configurator;
21use crate::config::Event; 21use crate::config::Event;
22use crate::device::{Device, DeviceAdapter, LinkState}; 22use crate::device::{Device, DeviceAdapter, LinkState};
23use crate::fmt::*;
24use crate::{Interface, SocketSet}; 23use crate::{Interface, SocketSet};
25 24
26const ADDRESSES_LEN: usize = 1; 25const ADDRESSES_LEN: usize = 1;
diff --git a/embassy-net/src/tcp_socket.rs b/embassy-net/src/tcp_socket.rs
index 4f43bc611..def4c8176 100644
--- a/embassy-net/src/tcp_socket.rs
+++ b/embassy-net/src/tcp_socket.rs
@@ -11,7 +11,6 @@ use smoltcp::time::Duration;
11use smoltcp::wire::IpEndpoint; 11use smoltcp::wire::IpEndpoint;
12 12
13use super::stack::Stack; 13use super::stack::Stack;
14use crate::fmt::*;
15use crate::{Error, Result}; 14use crate::{Error, Result};
16 15
17pub struct TcpSocket<'a> { 16pub struct TcpSocket<'a> {