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

102 Commits

Author SHA1 Message Date
MrKevinWeiss
a4bc692148
drivers/kw2xrd/Kconfig: fix kconfig model
Nightlies are currently failing as there is a difference between make
and kconfig.
This tries to match the kconfig with the makefile dep.
The only issue is the
```
ifneq (,$(filter netdev,$(USEMODULE)))
  USEMODULE += netdev_ieee802154_submac
endif
```

which may have the same effect as select
HAVE_IEEE802154_RADIO_HAL_INTERFACE.
2022-08-23 10:04:44 +02:00
Jose Alamos
2138af65dc
kw2xrf/Kconfig: remove netdev_ieee802154 from dependency resolution 2022-08-18 14:17:53 +02:00
Marian Buschsieweke
276ad5716a
sys/net/gnrc/netif: allow checking if a netdev is legacy or new API
A if `netdev_driver_t::confirm_send()` is provided, it provides the
new netdev API. However, detecting the API at runtime and handling
both API styles comes at a cost. This can be optimized in case only
new or only old style netdevs are in use.

To do so, this adds the pseudo modules `netdev_legacy_api` and
`netdev_new_api`. As right now no netdev actually implements the new
API, all netdevs pull in `netdev_legacy_api`. If `netdev_legacy_api` is
in used but `netdev_new_api` is not, we can safely assume at compile
time that only legacy netdevs are in use. Similar, if only
`netdev_new_api` is used, only support for the new API is needed. Only
when both are in use, run time checks are needed.

This provides two helper function to check for a netif if the
corresponding netdev implements the old or the new API. (With one
being the inverse of the other.) They are suitable for constant folding
when only new or only legacy devices are in use. Consequently, dead
branches should be eliminated by the optimizer.
2022-08-17 12:56:07 +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
Leandro Lanzieri
c3501e8b35
drivers/kw2xrf: model Kconfig 2022-07-28 09:32:24 +02:00
Leandro Lanzieri
124dd86845
drivers/kw2xrf/spi: fix documentation on return value 2022-07-11 09:25:00 +02:00
Leandro Lanzieri
98455c265d
drivers/kw2xrf: turn test mode into a submodule 2022-07-11 09:25:00 +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
MrKevinWeiss
d6ba7c1428
drivers/kw2xrf: Fix missing .h file in params 2022-07-11 09:24:58 +02:00
Benjamin Valentin
9ea5e58774 drivers: drop NETOPT_RX_END_IRQ 2022-05-11 23:44:24 +02:00
Francisco
a1cbcc9ede
Merge pull request #15902 from maribu/spi-api-change-1
drivers/periph_spi: let spi_acquire return void
2021-09-02 08:50:56 +02:00
Marian Buschsieweke
732cbd969c
drivers: update to new periph_spi API 2021-09-01 21:38:40 +02:00
Jan Romann
4384795cb9
treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
Jose Alamos
8cc28a29e1
kw2xrf: avoid explicit cast to netdev 2021-07-09 10:08:46 +02:00
Marian Buschsieweke
fba104c2ce
drivers/kw2xrf: make TX/RX IRQs read only
This brings the implementation in sync with the API.
2021-03-22 08:15:54 +01:00
Leandro Lanzieri
0e52e2747e
drivers: remove netif as dependency for network device drivers 2020-11-13 09:25:59 +01:00
Bas Stottelaar
62994dfb16 drivers/*: replace #if ENABLE_DEBUG with IS_ACTIVE 2020-11-02 21:34:12 +01:00
Bas Stottelaar
92b1dfc703 drivers/*: realign ENABLE_DEBUG 2020-10-23 01:26:09 +02:00
Marian Buschsieweke
90177889b7
treewide: 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-09-07 12:59:55 +02:00
Benjamin Valentin
a81c0a544c drivers/kw2xrf: use unsigned char 2020-07-31 13:38:03 +02:00
304bce3724
drivers: configure per driver dependency resolution 2020-07-20 14:32:16 +02:00
490126cfa0
drivers: move USEMODULE_INCLUDES in each driver directories 2020-07-15 20:36:27 +02:00
Leandro Lanzieri
a320181f55
drivers/kw2xrf: Enable TX End IRQ in netdev init
The driver needs this event but gnrc_netif_ieee802154 only enables the
interrupt when MODULE_NETSTATS_L2 is active.
2020-07-06 14:21:58 +02:00
Jose Alamos
3ad574a822 drivers/netdev: use netdev_trigger_event_isr function 2020-03-06 14:03:43 +01:00
Francois Berder
4a31f94cfc many typo fixes
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
2019-11-23 22:39:07 +01:00
Adem-Can Agdas
d74570fae3 drivers/kw2xrf: use TMR3 instead TMR4 to detect ACK timeout 2019-10-02 15:09:18 +02:00
Benjamin Valentin
9d6d93ef2f drivers: make use of ARRAY_SIZE macro 2019-08-06 19:43:54 +02:00
smlng
6183d5f5c5 netdev: remove layer2 netstats from netdev drivers
Removing usage of netdev->stats in all net drivers, as it is
handled by gnrc_netif.
2019-02-01 11:25:27 +02:00
Sebastian Meiling
2fde8335c9
Merge pull request #10728 from keestux/memcpy-struct-copy
Do normal assignment instead of memcpy
2019-01-16 09:18:44 +01:00
fcb55c36cf
kw2xrf: Don't set netdev values in addr setters 2019-01-12 17:04:14 +01:00
5fa40a02fa
kw2xrf: Don't propagate address to 802154 layer 2019-01-12 17:04:13 +01:00
014901aae4
kw2xrf: Add NETOPT_ADDRESS{,_LONG} to getters 2019-01-12 17:04:13 +01:00
666e83479f
kw2xrf: Fetch short addr from device
This change modifies the kw2xrf_get_addr_short function to retrieve the
short address from the device and not from netdev
2019-01-12 17:04:13 +01:00
b044e83a44
kw2xrf: Change long address get to big endian
This change ensures that the endianess returned by the get_addr_long
is consistent with the endianess of the get_addr_short
2019-01-12 17:04:13 +01:00
Kees Bakker
7126b1deb2 drivers/kw2xrf: do normal assignment instead of memcpy 2019-01-10 19:43:44 +01:00
dc70c3c218
kw2xrf: don't set netdev channel in set_channel 2018-12-03 10:17:26 +01:00
e3eaf4671f
kw2xrf: Don't propagate NETOPT_CHANNEL setter
This modification changes the netdev::set function for the kw2xrf to not
propagate the NETOPT_CHANNEL to the generic netdev_ieee802154 code
2018-12-03 10:16:08 +01:00
603b754d24
kw2xrf: Add NETOPT_CHANNEL to getters 2018-12-03 10:15:33 +01:00
5566f48f02
kw2xrf: Remove netdev access from set_pan
This write access is only required when a modification to the PAN ID
happened directly via this function and not via a netdev::set operation.
The only direct call was done in the reset function of the driver
2018-11-28 11:31:04 +01:00
52e68735c3
kw2xrf: Remove PAN ID initialization from reset 2018-11-28 11:31:03 +01:00
Semjon Kerner
5b0152f4f7 drivers/netdev_ieee802154: drop NETOPT_MAX_PKT_SIZE 2018-10-16 13:28:03 +02:00
Peter Kietzmann
ab5771bbf8
Merge pull request #9587 from bergzand/pr/kw2xrf/fix_ack_req
kw2xrf: Fix ack flag handling
2018-07-17 18:43:26 +02:00
b21c4f6f98
kw2xrf: fix NETOPT_AUTOACK getter and setter
Missing getter for NETOPT_AUTOACK and getter should return the size of
the variable (should not propagate to the netdev_ieee802154_get
function
2018-07-17 13:58:58 +02:00
4b723859f3
kw2xrf: use ACK_REQ flag for ACK check on TX 2018-07-17 13:57:30 +02:00
be7c4f7f28
kw2xrf: Remove default event report settings 2018-07-16 14:43:28 +02:00
71e5ce9a68
kw2xrf: use netdev reset function 2018-07-11 09:39:17 +02:00
a08e9919a9 drivers: fix doxygen grouping 2018-06-11 19:10:40 +02:00
Martine Lenders
55950dd814
Merge pull request #8690 from aabadie/pr/drivers/params/kw2xrf
drivers/kw2xrf: use new driver params scheme
2018-03-08 17:21:26 +01:00
23b414b732 drivers: net: adapt to iolist-using netdev 2018-03-06 14:00:31 +01:00
036a09e9f0 drivers/kw2xrf: use new driver params scheme 2018-03-01 14:11:05 +01:00