[riot-notifications] [RIOT-OS/RIOT] drivers/netdev: cleanup dependencies and remove ieee802154_radio_hal pseudomodule (#15886)
notifications at github.com
Fri Jan 29 13:53:11 CET 2021
### Contribution description
Currently radio drivers that implement the IEEE 802.15.4 radio HAL allow switching to the netdev implementation when `netdev_ieee802154_legacy` module is included. In fact, that module and `ieee802154_radio_hal` are mutually exclusive, but can only be present on radio drivers that implement both interfaces. This PR tries to make a cleanup of all these dependencies.
- The current behaviour on radio drivers that implement both interfaces is kept as is
- Radios that only implement the netdev legacy interface, pull in `netdev_ieee802154_legacy`
With that there is only one checking point for all radios to know which interface is being used.
Additionally, the PR avoids pulling `netdev` when `netdev_default` is used, as actually that pseudomodule should bring the network devices available in the platform, which could potentially not use netdev (e.g. cc2538, nrf52). As an example, see that `tests/ieee802154_hal` application does not use any `netdev_%` modules (aside from `netdev_default`) anymore, as it only tests the radio HAL.
Finally, the PR adds some documentation on default configurations (`saul_default` and `netdev_default`). I can split this part if it makes reviewing easier.
### Testing procedure
- IEEE 802.15.4 radios that don't implement the radio HAL include now `netdev_ieee802154_legacy`, but the binaries should not change for them
- `tests/ieee802154_hal` still works on the supported boards, but no netdev dependencies should be pulled in
### Issues/PRs references
You can view, comment on, or merge this pull request online at:
-- Commit Summary --
* doc: add documentation on default configurations
* drivers/Makefile.dep: don't pull netdev on netdev_default
* treewide: remove ieee802154_radio_hal as pseudomodule
-- File Changes --
M cpu/cc2538/Makefile.dep (5)
M cpu/cc2538/include/cc2538_rf.h (4)
M cpu/cc2538/radio/Makefile (7)
M cpu/cc2538/radio/cc2538_rf.c (4)
M cpu/nrf52/Makefile.dep (5)
M cpu/nrf52/include/nrf802154.h (4)
M cpu/nrf52/radio/nrf802154/Makefile (7)
M doc/doxygen/src/getting-started.md (12)
M doc/doxygen/src/porting-boards.md (23)
M drivers/Makefile.dep (2)
M drivers/at86rf215/Makefile.dep (4)
M drivers/at86rf2xx/Makefile.dep (4)
M drivers/cc2420/Makefile.dep (4)
M drivers/kw2xrf/Makefile.dep (4)
M drivers/kw41zrf/Makefile.dep (4)
M drivers/mrf24j40/Makefile.dep (4)
M makefiles/pseudomodules.inc.mk (1)
M pkg/openwsn/Makefile.dep (1)
M sys/Makefile.dep (6)
M sys/include/net/ieee802154_security.h (2)
M tests/ieee802154_hal/Makefile (1)
-- Patch Links --
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the notifications