Marian Buschsieweke
86fdbd7054
core/lib: Add macros/utils.h header
...
The macros CONCAT(), MIN(), and MAX() are defined over and over again in
RIOT's code base. This de-duplicates the code by moving the macros to a
common place.
2023-01-07 09:47:44 +01:00
Felix
17c70f7ee0
gnrc_netif_ieee802154: Ignore packets without source address
2022-10-29 00:58:35 +02:00
Marian Buschsieweke
b539d7ad6d
Merge pull request #17905 from benpicco/GNRC_NETIF_STACKSIZE_DEFAULT
...
gnrc_netif: don't allocate message queue on the stack
2022-10-13 17:10:43 +02:00
Martine Lenders
5f504ad70d
gnrc_netif_lorawan: add debug message for failed send
2022-10-11 22:57:00 +02:00
Martine Lenders
f34f296242
gnrc_netif_lorawan: add support for LINK_UP/_DOWN events
2022-10-11 12:29:11 +02:00
Martine Lenders
47aaa94157
gnrc_ipv6_nib: handle iface_up/iface_down in IPv6 thread
2022-10-07 14:12:00 +02:00
Ollrogge
12a4e1c1ec
gnrc/lorawan: add support for GNRC LoRaWAN 1.1
2022-09-29 11:25:56 +02:00
Benjamin Valentin
b1ea963df4
gnrc_netif: introduce GNRC_NETIF_STACKSIZE_DEFAULT
2022-09-18 18:35:21 +02:00
Marian Buschsieweke
8457f09dde
Merge pull request #18139 from maribu/sys/net/gnrc/netif/confirm_send
...
sys/net/gnrc_netif: Make use of confirm send
2022-09-17 19:40:24 +02:00
Benjamin Valentin
4b0bfae4ca
gnrc_netif: handle NETDEV_EVENT_LINK_UP/DOWN events
2022-09-16 22:57:06 +02:00
Benjamin Valentin
6e7d5ae2d3
codespell: fix remaining issues
2022-09-16 14:00:35 +02:00
Marian Buschsieweke
581f35e577
sys/net/gnrc/netif: adapt to new API
...
For Ethernet, raw netifs, and IEEE 802.15.4 netifs only release outgoing
frame with legacy drivers, as gnrc_netif does so with new non-blocking
API.
2022-09-15 13:23:26 +02:00
Marian Buschsieweke
1cb6f9e11a
sys/net/gnrc/netif: provide support for confirm_send()
...
This adds support for netdevs implementing the new API that provides
`netdev_driver_t::confirm_send()`. This allows implementing netdevs
in an event based non-blocking fashion, making live of driver
developers a bit easier. In addition, `gnrc_tx_sync` will now throttle
users of `sock_udp_send()` so that they can only send datagrams as
fast as the network stack and hardware is able to send out.
Finally, this lays the groundwork to fetch TX statistics (such as
TX timestamps, reception of layer 2 ACKs/NACKs, etc.) from the network
devices.
2022-09-15 13:23:25 +02:00
Jose Alamos
5fd601ae97
gnrc/init_devs/kw2xrf: use high priority queue for drivers
2022-08-22 18:00:15 +02:00
Jose Alamos
2c9f3072fb
net/gnrc_netif: add support for priority queues
2022-08-22 18:00:14 +02:00
Jose Alamos
4ebcd7c055
drivers/kw2xrf: add IEEE 802.15.4 Radio HAL support
...
Co-authored-by: Michel Rottleuthner <michel.rottleuthner@haw-hamburg.de>
2022-08-15 12:11:03 +02:00
Benjamin Valentin
56fc7c375f
gnrc_netif: move message queue to gnrc_netif_t
2022-07-18 23:28:38 +02:00
benpicco
2198eb84c0
Merge pull request #18284 from jia200x/pr/gnrc_netif_move_tested_options
...
gnrc_netif: move `option_tested` to default init function
2022-07-11 22:57:57 +02:00
Leandro Lanzieri
4a3231f763
drivers/kw2xrf: add setup function with global index
...
This index is used to register the network device.
2022-07-11 09:24:59 +02:00
Jose Alamos
2c76dbf351
gnrc_netif: move option_tested
to default init function
2022-06-29 17:48:27 +02:00
Marian Buschsieweke
973b6f69bf
sys/net/netopt: change NETOPT_STATS semantics
...
Instead of retrieving a pointer with NETOPT_STATS, retrieve the current
data. This avoids data corruptions when reading from one thread (e.g.
the thread running the shell (ifconfig command)) while another thread
is updating it (e.g. the netif thread).
The issue affects all boards, as users typically expect the count of
TX packets and the number of TX bytes to refer to the same state. For
16 bit and 8 bit platforms even a single netstat entry can read back
corrupted.
This fixes the issue by just copying the whole netstat_t struct over
without requiring explicit locking on the user side. A multi-threaded
network stack still needs to synchronize the thread responding to
netopt_get with the thread writing to the netstat_t structure, but that
is an implementation detail no relevant to the user of the API.
2022-06-28 16:57:43 +02:00
Martine Lenders
18edd896c1
Merge pull request #18153 from benpicco/gnrc_netif_pktq-fix
...
gnrc_netif_pktq: protect against concurrent access
2022-06-01 22:00:29 +02:00
Benjamin Valentin
61cc168ce1
gnrc_netif_pktq: protect against concurrent access
...
fixes #17924
2022-06-01 12:13:31 +02:00
Martine Lenders
c4e202ae67
Merge pull request #17709 from benpicco/cpu/native-tap_wired
...
netdev_tap: make 'wired' property configurable
2022-06-01 02:24:43 +02:00
Martine Lenders
e22fb6ef07
gnrc_netif_pktq: create dedicated Kconfig
...
Reflects dependency change in e5f93f856d
2022-05-30 11:13:52 +02:00
Martine Lenders
3e531801e6
Merge pull request #17678 from miri64/gnrc_netif/enh/optional-comp-ctx
...
gnrc_netif: make auto-config of compression context optional
2022-05-25 00:51:36 +02:00
Martine Lenders
3d819ce707
gnrc_netif: make auto-config of compression context optional
2022-05-24 12:30:36 +02:00
Benjamin Valentin
fad65011b7
netdev_tap: make NETDEV_TAP_MAX an upper bound
2022-05-23 15:27:35 +02:00
benpicco
d28a45e939
Merge pull request #18089 from benpicco/NETOPT_RX_END_IRQ
...
net/netopt: drop NETOPT_RX_END_IRQ
2022-05-16 11:34:48 +02:00
Benjamin Valentin
03a669c407
gnrc_netif: remove warning about NETOPT_RX_END_IRQ
2022-05-11 13:56:47 +02:00
Jose Alamos
081dfe0e64
gnrc_netif: use event queue for ISR offload
2022-05-10 17:48:42 +02:00
Jose Alamos
38798cb877
gnrc_netif: use events instead of msg queue for ISR offload
2022-05-10 17:48:42 +02:00
Benjamin Valentin
d800cca1c3
drivers/atwinc15x0: register with netdev
2022-03-30 16:07:29 +02:00
benpicco
1133d04de1
Merge pull request #17813 from leandrolanzieri/pr/tests/eth_drivers_rework
...
tests: rework eth drivers
2022-03-28 18:15:27 +02:00
Martine Lenders
624e8099ec
gnrc_netif: fix potential null pointer dereference
2022-03-24 15:53:23 +01:00
Leandro Lanzieri
a2e5934ec9
drivers/encx24j600: introduce setup function with index
2022-03-24 09:32:10 +01:00
Leandro Lanzieri
5f7a906b95
drivers/w5100: introduce setup with index
2022-03-24 09:30:42 +01:00
benpicco
2d89399047
Merge pull request #17745 from leandrolanzieri/cpu/esp32/esp-eth/move_auto_init
...
cpu/esp32/esp-eth: move GNRC auto_init to init_devs
2022-03-07 20:25:06 +01:00
Dylan Laduranty
9d459b8a14
Merge pull request #17746 from leandrolanzieri/cpu/sam0_common/eth/expose_correct_setup
...
cpu/sam0_common/eth: expose correct setup function
2022-03-07 18:42:08 +01:00
Leandro Lanzieri
de79edb352
drivers/encx24j600: define default parameters
2022-03-04 09:58:50 +01:00
Leandro Lanzieri
74c8893a4f
cpu/esp32/esp-eth: move GNRC auto init to init_devs
2022-03-04 09:41:18 +01:00
Leandro Lanzieri
f1075ad749
cpu/sam0_common/eth: expose correct setup function
2022-03-04 08:57:42 +01:00
Jens Wetterich
4dfeafcabd
cpu/native/netdev_tap: Add to netdev_register
2022-02-11 07:54:11 +01:00
3b5662e116
gnrc/netif: convert to ztimer
2022-01-28 13:38:50 +01:00
Jose Alamos
5f46ab72e0
net/gnrc/lorawan: adapt ops->init to handle driver initialization
2022-01-10 13:59:27 +01:00
Jose Alamos
415704fa76
net/gnrc_netif: move netdev init code to ops->init
2022-01-10 13:59:24 +01:00
Jose Alamos
e7fac9f661
net/gnrc_netif: add return values to init
2022-01-10 13:59:01 +01:00
Benjamin Valentin
4b9bdc61b2
gnrc_netif/lorawan: add ; after DEBUG()
2021-12-09 10:14:07 +01:00
José Alamos
ce8cda2fd8
Merge pull request #16932 from benpicco/socket_zep-hal
...
socket_zep: port to radio HAL
2021-12-07 18:24:33 +01:00
Marian Buschsieweke
b1114b0674
sys/net/gnrc/netif: use container_of()
...
Using `container_of()` to translate from `netif_t *` to the containing
`gnrc_netif_t *` adds a bit of plausibility: It will fail when `gnrc_netif_t`
stops to contain `netif_t` as member. Additionally, this silences false
positives of -Wcast-align
2021-12-03 10:12:33 +01:00