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

293 Commits

Author SHA1 Message Date
Leandro Lanzieri
ae81b808a1
Merge pull request #16080 from jia200x/pr/gnrc_lorawan_netif
gnrc_lorawan: encode LoRaWAN port in netif header
2021-06-17 11:30:09 +02:00
Jose Alamos
7343c1c503
gnrc_netif_lorawan: add netif hdr support 2021-06-16 13:18:04 +02:00
Jose Alamos
dfacff9568
gnrc_lorawan: add support for RTT 2021-06-16 13:13:37 +02:00
Jose Alamos
2f680eaf01
gnrc_lorawan: remove xtimer and msg dependency
This commit removes the dependency to xtimer and RIOT messages.
This step is required to use other sources of events (e.g event_queue)
and timers (RTT)
2021-06-16 13:03:28 +02:00
Benjamin Valentin
2467c84634 drivers/ethos: enable multiple instances 2021-06-11 12:31:37 +02:00
Jnae
b287d120ff at86rf215: timestamp counter for rx frames 2021-05-12 15:27:36 +02:00
benpicco
2b6454a2d7
Merge pull request #16106 from fabian18/ieee802154_security_small_bugfix_and_stricter_names
net/ieee802154_security: small bugfix and stricter names
2021-05-03 11:29:43 +02:00
Benjamin Valentin
d611a264fd drivers/cc2420: register with netdev 2021-04-27 17:37:52 +02:00
Fabian Hüßler
346f92f663 sys/net/link_layer/ieee802154: stricter names for security types
stricter prefixing of security related types and constants with
"ieee802154_sec_"
2021-04-27 08:54:19 +02:00
efdaf9225f
sys/net/gnrc: disable sx126x auto init with loramac 2021-03-30 19:03:34 +02:00
bede0cd98c
sys/net/auto_init: add sx126x auto_init logic 2021-03-30 16:12:40 +02:00
Marian Buschsieweke
bcc899f2db
Merge pull request #16100 from maribu/netopt_tx_end_irq
sys/net/netopt: make NETOPT_TX_END_IRQ and friends read-only
2021-03-22 21:17:45 +01:00
José Alamos
c5d620add8
Merge pull request #16206 from akshaim/lorawan-netif_dr_fix
gnrc_netif_lorawan: Validate DR
2021-03-22 11:03:30 +01:00
Marian Buschsieweke
80d56488cc
sys/net/gnrc/netif: update use of NETOPT_TX_END_IRQ and friends
With the API change, it is no longer possible to enable these IRQs at
run time. Instead, query if the needed events are supported (with DEVELHELP).
2021-03-22 08:15:52 +01:00
Akshai M
efdefaa7db gnrc_netif_lorawan: Validate DR
Co-authored-by: José Alamos <jialamos@uc.cl>
2021-03-19 12:17:44 +01:00
Martine Lenders
214fdf007d
Merge pull request #16193 from miri64/gnrc_netif_pktq/feat/usage
gnrc_netif_pktq: add function to check usage
2021-03-18 23:05:27 +01:00
benpicco
8ca676aa6e
Merge pull request #15907 from benpicco/gnrc_netif-register
sys/net/gnrc/netif: only register netif after init was successful
2021-03-16 16:26:06 +01:00
Martine S. Lenders
db8415b5b6 gnrc_netif_pktq: add function to check usage 2021-03-15 15:13:27 +01:00
Leandro Lanzieri
7faa84ff56
Merge pull request #16110 from jia200x/pr/fix_gnrc_lorawan_pktbuf
gnrc_netif_lorawan: add missing NULL check
2021-03-01 14:46:44 +01:00
Jose Alamos
275630289d
gnrc_netif_lorawan: add missing NULL check 2021-03-01 10:50:57 +01:00
Benjamin Valentin
a82bc64a34 sys/net/gnrc/netif: only register netif after init was successful
If we call `netif_register()` before we can be sure that the interface
can be configured, a 'zombie' interface remains in the list, causing
all kinds of trouble down the line.

Only call `netif_register()` if `init()` was successful.
2021-02-25 21:48:47 +01:00
Martine Lenders
de4ee0f934
Merge pull request #15562 from benpicco/socket_zep_register
socket_zep: register with netdev, provide EUI-64 as command line parameter
2021-02-20 20:32:01 +01:00
3b7e852773 net/gnrc/netif: hook up netstats_neighbor 2021-02-09 12:27:58 +01:00
Marian Buschsieweke
89c69c5450
sys/net/gnrc/tx_sync: new module
The new `gnrc_tx_sync` module allows users of the GNRC network stack to
synchronize with the actual transmission of outgoing packets. This is directly
integrated into gnrc_sock. Hence, if `gnrc_tx_sync` is used, calls to e.g.
sock_udp_send() will block until the network stack has processed the message.

Use cases:
1. Prevent packet drop when sending at high rate
    - If the application is sending faster than the stack can handle, the
      message queues will overflow and outgoing packets are lost
2. Passing auxiliary data about the transmission back the stack
    - When e.g. the number of required retransmissions, the transmission time
      stamp, etc. should be made available to a user of an UDP sock, a
      synchronization mechanism is needed
3. Simpler error reporting without footguns
    - The current approach of using `core/msg` for passing up error messages is
      difficult to use if other message come in. Currently, gnrc_sock is
      busy-waiting and fetching messages from the message queue until the number
      of expected status reports is received. It will enqueue all
      non-status-report messages again at the end of the queue. This has
      multiple issues:
        - Busy waiting is especially in lower power scenarios with time slotted
          MAC protocols harmful, as the CPU will remain active and consume
          power even though the it could sleep until the TX slot is reached
        - The status reports from the network stack are send to the user thread
          blocking. If the message queue of the user thread is full, the network
          stack would block until the user stack can fetch the messages. If
          another higher priority thread would start sending a message, it
          would busy wait for its status reports to completely come in. Hence,
          the first thread doesn't get CPU time to fetch messages and unblock
          the network stack. As a result, the system would lock up completely.
    - Just adding the error/status code to the gnrc_tx_sync_t would preallocate
      and reserve memory for the error reporting. That way gnrc_sock does not
      need to search through the message queue for status reports and the
      network stack does not need to block for the user thread fetching it.
2021-02-03 15:16:42 +01:00
Akshai M
ed1b86492f net/lorawan : Move 'LORAMAC_DEFAULT_JOIN_PROCEDURE' to 'CONFIG_'
Added symbols 'CONFIG_LORAMAC_DEFAULT_JOIN_PROCEDURE_XXX'
for Kconfig exposure
2021-01-26 16:52:59 +01:00
Akshai M
d2d90fbce5 net/lorawan : Move 'LORAMAC_DEFAULT_TX_MODE' to 'CONFIG_'
Move 'LORAMAC_DEFAULT_TX_MODE' to 'CONFIG_' and added symbols
for Kconfig exposure
2021-01-26 16:52:58 +01:00
Akshai M
aa3b1da0c4 net/lorawan : Move 'LORAMAC_DEFAULT_TX_PORT' to 'CONFIG_' 2021-01-26 16:52:58 +01:00
Akshai M
55f196095d net/lorawan : Move 'LORAMAC_DEFAULT_DR' to 'CONFIG_'
Move 'LORAMAC_DEFAULT_DR' to 'CONFIG_' and enable options for
Kconfig
2021-01-26 16:52:58 +01:00
Akshai M
9e626f471a net/lorawan : Move 'LORAMAC_DEV_ADDR_DEFAULT' to 'CONFIG_' 2021-01-26 16:52:57 +01:00
Akshai M
50e979c600 net/lorawan : Move 'LORAMAC_NWK_SKEY_DEFAULT' to 'CONFIG_' 2021-01-26 16:52:57 +01:00
Akshai M
43d7f28e63 net/lorawan : Move 'LORAMAC_APP_SKEY_DEFAULT' to 'CONFIG_' 2021-01-26 16:52:57 +01:00
Akshai M
d138fa9aad net/lorawan : Move 'LORAMAC_APP_KEY_DEFAULT' to 'CONFIG_' 2021-01-26 16:52:57 +01:00
Akshai M
bcb0ed38ff net/lorawan : Move 'LORAMAC_APP_EUI_DEFAULT' to 'CONFIG_' 2021-01-26 16:52:57 +01:00
Akshai M
5b4a873de5 net/lorawan : Move 'LORAMAC_DEV_EUI_DEFAULT' to 'CONFIG_' 2021-01-26 16:52:57 +01:00
Akshai M
3ecd304354 net/gnrc_lorawan : String keywords for keys
Swapped hex input for keys with string keywords.
2021-01-26 16:52:57 +01:00
Benjamin Valentin
d8918c24fa socket_zep: register with netdev 2021-01-25 22:59:01 +01:00
Fabian Hüßler
7d618afa17 nrf24l01p_ng: make use of netdev_register() 2021-01-24 20:49:39 +01:00
fabian18
f7a77ebb04 drivers/nrf24l01p_ng: netdev driver for nrf24l01+
The driver uses the netdev interface. Due to the limited
capabilities of the transceiver (32 byte FIFO and no source address in the layer2 frame),
it relies on 6LowPAN compression and adds the source address to the frame for that.
2021-01-24 20:49:39 +01:00
Martine Lenders
640ff4f5d8
Merge pull request #15609 from maribu/ethernet-rx-timestamp
sys/net/gnrc/netif/ethernet: Support RX timestamp
2021-01-07 19:53:52 +01:00
Marian Buschsieweke
f6bca70d11
sys/net/gnrc/netif/ethernet: Support RX timestamp 2021-01-06 20:30:14 +01:00
Martine S. Lenders
1cd1716280
gnrc_sixlowpan_frag: initial import of Selective Fragment Recovery 2020-12-14 13:00:36 +01:00
dylad
5b7961b747 sys/net: add sam0 eth auto init 2020-12-13 22:01:50 +01:00
benpicco
1477a340fe
Merge pull request #15150 from fabian18/ieee802154_security
Initial implementation of IEEE 802.15.4 security
2020-12-09 14:14:27 +01:00
Benjamin Valentin
518c95e0ee gnrc_netif_ieee802154_create: use byteorder_htols() 2020-12-08 16:31:20 +01:00
Fabian Hüßler
7b5391b7ce sys/net/gnrc/netif/init_devs: IEEE802154_STACKSIZE_DEFAULT 2020-12-04 09:40:55 +01:00
Fabian Hüßler
dc16c14b3d sys: Add IEEE 802.15.4 security 2020-12-04 09:40:55 +01:00
benpicco
665c07eb53
Merge pull request #15120 from benpicco/driver/at86rf215-trim
driver/at86rf215: add functions to configure trim & clock output at run-time
2020-12-02 16:53:02 +01:00
Benjamin Valentin
b866b5ef2b sys/net/gnrc/netif: add gnrc_netif_get_netdev()
Add a function to retrieve a netdev from the list of interfaces.
2020-12-02 14:59:17 +01:00
Fabian Hüßler
c526a34770 sx127x: make use of netdev_register()
Call netdev_register() in sx127x_setup()
and pass the index in auto_init_sx127x()
and semtech_loramac_init()
2020-12-01 16:34:11 +01:00
Fabian Hüßler
39adf908ce cc110x: make use of netdev_register()
Call netdev_register() in cc110x_setup()
and pass the index in auto_init_cc110x()
2020-12-01 12:11:20 +01:00