1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
Commit Graph

210 Commits

Author SHA1 Message Date
Marian Buschsieweke
8a5d301caa
sys/net/gnrc/netif: Fix compilation on waspmote-pro
xtimer.h must not be included, when the xtimer module is not use. Otherwise
compilation on the waspmote-pro with https://github.com/RIOT-OS/RIOT/pull/14799
will not longer work. gnrc_netif_pktq includes xtimer.h and uses xtimer, but
gnrc_netif includes gnrc_netif_pktq.h regardless of whether gnrc_netif_pktq
is used. This makes sure that gnrc_netif_pktq.h is only included when actually
used.
2020-09-22 11:51:09 +02:00
Marian Buschsieweke
1d1b446d6b
sys/net/gnrc/netif: use IS_USED macro 2020-09-22 11:50:18 +02:00
Marian Buschsieweke
0cb274c1eb
sys/net/gnrc: Fix include of xtimer.h
Make sure xtimer.h is only included if the xtimer module is actually used, as
otherwise compilation for the waspmote-pro fails.
2020-09-16 19:55:43 +02:00
Francisco
cb6b65e7ff
Merge pull request #14886 from miri64/gnrc/fix/circ-deps
gnrc: remove circular module dependencies
2020-09-09 09:06:28 +02:00
Martine S. Lenders
0e3443d006
gnrc_netif: guard usage of gnrc_ipv6 member 2020-09-08 12:53:29 +02:00
Martine Lenders
a72d0ef3e8
gnrc_netif: add packet to queue when device is busy
... and also send on send error (i.e. when *medium* was busy)
2020-09-02 12:30:23 +02:00
Martine Lenders
7c7f667108
gnrc_netif: add a send queue 2020-09-02 12:30:22 +02:00
Leandro Lanzieri
d25fc243c4
treewide: change prefix for generated Kconfig symbols.
This changes the prefixes of the symbols generated from USEMODULE and
USEPKG variables. The changes are as follow:

   KCONFIG_MODULE_ => KCONFIG_USEMODULE_
   KCONFIG_PKG_ => KCONFIG_USEPKG_
   MODULE_ => USEMODULE_
   PKG_ => USEPKG_
2020-08-31 09:37:09 +02:00
benpicco
9f2475dc14
Merge pull request #14832 from maribu/sys-cleanup
sys: Cleanup access to internal variables
2020-08-26 17:07:19 +02:00
benpicco
2eb6d752df
Merge pull request #14770 from benpicco/netif_addr_to_str
net/netif: move gnrc_netif_addr_to/from_str() to netif
2020-08-25 18:52:55 +02:00
Marian Buschsieweke
3b6fa61829
sys: Cleanup access to internal variables
Replace direct accesses to sched_active_thread and sched_active_pid with
the helper functions thread_getpid() and thread_get_active(). This serves
two purposes:

1. It makes accidental writes to those variable from outside core less likely.
2. Casting off the volatile qualifier is now well contained to those two
   functions
2020-08-24 20:28:11 +02:00
Benjamin Valentin
decadc41a0 drivers/dose: register driver with netdev 2020-08-17 22:53:51 +02:00
Benjamin Valentin
4f19b54b7b drivers/at86rf215: register driver with netdev 2020-08-17 22:53:51 +02:00
Benjamin Valentin
53eedc283b drivers/at86rf2xx: register driver with netdev 2020-08-17 22:53:51 +02:00
Benjamin Valentin
39951a948e net/netif: move gnrc_netif_addr_to/from_str() to netif
These functions are independent from GNRC and can be used by stack-agnistoc
code.
Avoid pulling in a GNRC dependency by moving those two helper functions to
`netif`.

The old function names are kept as `static inline` wrapper functions to avoid
breaking API users.
2020-08-16 23:52:32 +02:00
Jose Alamos
96ee1d2bf8 net/gnrc_netif_lorawan: fix unaligned copy 2020-07-13 16:57:26 +02:00
Gunar Schorcht
b51ac69d0a sys/net/gnrc: add netif support for ATWINC15x0 netdef driver 2020-06-26 12:33:38 +02:00
Martine Lenders
09d097c934
Merge pull request #14214 from btcven/2020_06_06-6lo-mtu
net/gnrc/netif: add option for non-std 6lo MTU
2020-06-18 15:25:01 +02:00
Jean Pierre Dudey
e1ef082d49
net/gnrc/netif: disable 6lo fragmentation when unneeded
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2020-06-18 07:16:16 -05:00
Jean Pierre Dudey
d47f4a1caa
net/gnrc/netif: add option for non-std 6lo MTU
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2020-06-18 07:16:16 -05:00
Leandro Lanzieri
05962fe3ef
gnrc/netif: Configure queue size with exponent
This changes the configuration macro to be the exponent of 2^n, as the
message queue size needs to be always power of 2.
2020-06-15 07:30:52 +02:00
Martine Lenders
f9bed00701
Merge pull request #12738 from miri64/netif/enh/id-functions
netif: add functions to get and get by identifier
2020-06-09 15:12:06 +02:00
821eb5bc76
sys/net/auto_init: remove useless preprocessor directives
The files are now built only when the corresponding module is used
2020-06-08 11:10:39 +02:00
29c5c54fe2
sys/net/auto_init: only build files when related module is used 2020-06-08 11:10:22 +02:00
3fe35e755c
sys/net/auto_init: rename cdcecm source file
Use a name that corresponds to the related module name
2020-06-08 10:27:35 +02:00
Jean Pierre Dudey
60385d2c24
net/gnrc/netif: limit 6lo frag size
The 6Lo network interfaces can only support a max_frag_size of
SIXLOWPAN_FRAG_MAX_LEN (2047 bytes) as the length field is only 11-bits.

This limits the max_frag_size in the case that the L2-PDU is higher than
that.

Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2020-06-07 15:43:33 -05:00
Benjamin Valentin
840be824d4 gnrc_netif: relax 6lo MTU assertion for 802.15.4g
802.15.4g devices have a 2047 byte PDU.
So the assertion `netif->ipv6.mtu == IPV6_MIN_MTU` is too strict here.

This is only enforced on init, so changing the modulation at run-time
did not catch this bug.

To test, use e.g. `at86rf215` with

    CFLAGS += -DAT86RF215_DEFAULT_PHY_MODE=IEEE802154_PHY_MR_OQPSK

fixes #14164
2020-05-29 15:59:23 +02:00
Benjamin Valentin
3974a04623 gnrc/nib: add NIB event bus
Add a message bus where threads can listen for nib events.

Currently only the GNRC_IPV6_NIB_EVENT_ADDR_VALID event is
implemented which informs subscribers that an address got
valid.
2020-05-20 10:44:11 +02:00
Benjamin Valentin
85100ad61a gnrc_netif: add message bus to interface
Allow threads to listen for events on an interface.
2020-05-20 10:44:11 +02:00
Leandro Lanzieri
16113afb1e
Merge pull request #14026 from miri64/gnrc_netif/fix/deps
gnrc_netif: use gnrc_netif-submodules to pull in upper-layer struct members
2020-05-19 16:36:18 +02:00
Martine S. Lenders
a48629b395
gnrc_netif: introduce gnrc_netif_ipv6 pseudo-module for IPv6 members
This aims to reduce circular dependencies in GNRC.
2020-05-19 16:10:59 +02:00
Martine S. Lenders
9801a439fc
gnrc_netif: introduce gnrc_netif_6lo pseudo-module for 6LoWPAN members
This aims to reduce circular dependencies in GNRC.
2020-05-19 16:10:59 +02:00
Martine S. Lenders
0d2f0a5ba4
gnrc_netif: fix gnrc_netif_lorawan dependencies 2020-05-19 16:10:58 +02:00
José Alamos
089e0a2b44
Merge pull request #14048 from jue89/fix/gnrc_lorawan_abp
net/gnrc/netif/lorawan: fix ABP device activation
2020-05-11 11:34:59 +02:00
Juergen Fitschen
1eb3b596c4 net/gnrc/netif/lorawan: fixed ABP device activation 2020-05-09 20:16:29 +02:00
Juergen Fitschen
255c76ff35 net/gnrc/netif/lorawan: fixed deprecated NETOPT_LINK_CONNECTED 2020-05-09 20:11:16 +02:00
Benjamin Valentin
18651eb399 gnrc_netif: Use full L2-PDU as IPv6 MTU
If the L2-PDU is greater than IPV6_MIN_MTU, use that as the MTU instead.
2020-04-29 12:49:36 +02:00
Francisco
80b300289d
Merge pull request #13912 from benpicco/at86rf215-mr-qpsk
drivers/at86rf215: implement MR-O-QPSK
2020-04-29 12:44:00 +02:00
Benjamin Valentin
504d02038d gnrc_netif: update PDU after changing PHY mode 2020-04-29 10:41:37 +02:00
Martine Lenders
652276f00f
gnrc_netif: provide PID-based version for netif ID 2020-04-17 16:59:21 +02:00
Joakim Nohlgård
2013ac75f5
gnrc_netif: Add support for internal event loop
Enabled by the gnrc_netif_events pseudo module. Using an internal event
loop within the gnrc_netif thread eliminates the risk of lost interrupts
and lets ISR events always be handled before any send/receive requests
from other threads are processed.
The events in the event loop is also a potential hook for MAC layers and
other link layer modules which may need to inject and process events
before any external IPC messages are handled.

Co-Authored-By: Koen Zandberg <koen@bergzand.net>
2020-04-17 12:02:39 +02:00
Leandro Lanzieri
184bbd32e5
gnrc/netif: Fix lines lengths 2020-03-31 19:02:54 +02:00
Leandro Lanzieri
e52b93cef0
gnrc/nib: Move GNRC_IPV6_NIB_CONF_ARSM to 'CONFIG_' namespace
Also evaluate it using IS_ACTIVE macro.
2020-03-31 18:07:07 +02:00
Leandro Lanzieri
ce931f179c
gnrc/nib: Move GNRC_IPV6_NIB_CONF_SLAAC to 'CONFIG_' namespace
Also evaluate it using IS_ACTIVE macro.
2020-03-31 18:07:05 +02:00
Leandro Lanzieri
49ec28867c
gnrc/nib: Move GNRC_IPV6_NIB_CONF_ROUTER to 'CONFIG_' namespace
Also evaluate it using IS_ACTIVE macro.
2020-03-31 18:07:05 +02:00
Leandro Lanzieri
1acfe7ae19
gnrc/nib: Move GNRC_IPV6_NIB_CONF_6LN to 'CONFIG_' namespace
Also evaluate it using IS_ACTIVE macro.
2020-03-31 18:07:04 +02:00
Jose Alamos
44f7cb712c gnrc_netif: add GNRC_NETIF_SINGLE macro 2020-03-26 14:19:02 +01:00
Jose Alamos
e451570219 gnrc_netif: remove GNRC_NETIF_NUMOF macro 2020-03-26 11:12:23 +01:00
Jose Alamos
67ed9defbe gnrc_netif_xxx_create: use external netif allocation 2020-03-26 11:12:23 +01:00
Francisco
cdbf0b2d69
Merge pull request #13583 from benpicco/at86rf215-minimal
drivers/at86rf215: add basic support for AT86RF215 dual-band radio
2020-03-20 09:33:50 +01:00