-
Notifications
You must be signed in to change notification settings - Fork 2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
gnrc: deprecate gnrc_netdev_default, use netdev_default instead #16744
Conversation
Actually, what's the purpose of |
I was wondering the same, but since pretty much all apps are using that instead of It looks like |
at least
It seems that those lines just select
We could then simply deprecate |
Isn't "netdev_default" the network stack independent version, and used as such by tests? edit yeah that's mentioned above already. |
Do we even have a mechanism for marking modules as deprecated? |
ifneq (,$(filter gnrc_netdev_default,$(USEMODULE))) | ||
# enable default network devices on the platform | ||
USEMODULE += netdev_default | ||
endif | ||
|
||
ifneq (,$(filter netdev_default,$(USEMODULE))) | ||
USEMODULE += netdev | ||
USEMODULE += gnrc_netif | ||
endif |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
At this point, what is the difference between gnrc_netdev_default
and netdev_default
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Mhhh netdev_default
(at least in theory) should also be used to pull in default network devices for stacks other than GNRC. So this is the difference. Since this here is the GNRC dependency file, this is still observed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the goal of this PR is to make gnrc_netdev_default
unnecessary so it can be deprecated ;-).
3fc031f
to
643882f
Compare
It used to be the pseudo-module to pull in |
Oh no there are some radio drivers ( |
No they don't. Those lines are within the |
Apparently there are also some modules in the test for the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can't compile the changed tests partially now :-/. Maybe add USEMODULE += nimble_netif
to them instead?
@@ -7,7 +7,6 @@ USEMODULE += shell_commands | |||
USEMODULE += ps | |||
|
|||
# Include GNRC and RPL | |||
USEMODULE += gnrc_netdev_default |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I get
/usr/lib/gcc/arm-none-eabi/11.2.0/../../../../arm-none-eabi/bin/ld:cortexm_base.ld:217: warning: memory region `bkup' not declared
/usr/lib/gcc/arm-none-eabi/11.2.0/../../../../arm-none-eabi/bin/ld:cortexm_base.ld:217: syntax error
now here when compiling on Arch
Operating System Environment
----------------------------
Operating System: "Arch Linux"
Kernel: Linux 5.13.13-arch1-1 x86_64 unknown
System shell: GNU bash, version 5.1.8(1)-release (x86_64-pc-linux-gnu)
make's shell: GNU bash, version 5.1.8(1)-release (x86_64-pc-linux-gnu)
Installed compiler toolchains
-----------------------------
native gcc: gcc (GCC) 11.1.0
arm-none-eabi-gcc: arm-none-eabi-gcc (Arch Repository) 11.2.0
avr-gcc: avr-gcc (GCC) 11.2.0
mips-mti-elf-gcc: missing
msp430-elf-gcc: missing
riscv-none-elf-gcc: missing
riscv64-unknown-elf-gcc: missing
riscv-none-embed-gcc: missing
xtensa-esp32-elf-gcc: missing
xtensa-esp8266-elf-gcc: missing
clang: clang version 12.0.1
Installed compiler libs
-----------------------
arm-none-eabi-newlib: "4.1.0"
mips-mti-elf-newlib: missing
msp430-elf-newlib: missing
riscv-none-elf-newlib: missing
riscv64-unknown-elf-newlib: missing
riscv-none-embed-newlib: missing
xtensa-esp32-elf-newlib: missing
xtensa-esp8266-elf-newlib: missing
avr-libc: "2.0.0" ("20150208")
Installed development tools
---------------------------
ccache: ccache version 4.4
cmake: cmake version 3.21.2
cppcheck: Cppcheck 2.5
doxygen: 1.9.2
git: git version 2.33.0
make: GNU Make 4.3
openocd: Open On-Chip Debugger 0.10.0+dev-01089-g3bfe49266 (2020-02-26-14:18)
python: Python 3.9.6
python2: Python 2.7.18
python3: Python 3.9.6
flake8: 3.9.2 (mccabe: 0.6.1, pycodestyle: 2.7.0, pyflakes: 2.3.1) CPython 3.9.6 on
coccinelle: spatch version 1.1.0 compiled with OCaml version 4.11.1
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
should be fixed by #16753
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should make sense to add nimble_netif
anyways.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The Department of Redundancy Department approves 😉
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't see the redundancy. Currently the nimble_netif
is pulled in implicitly, but since the tests are testing nimble
-functionality it should be pulled in explicitly.
@@ -7,7 +7,6 @@ USEMODULE += shell_commands | |||
USEMODULE += ps | |||
|
|||
# Include GNRC and RPL | |||
USEMODULE += gnrc_netdev_default |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here too.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For me the binary does not change when I add nimble_netif
Yepp that fixes the tests for me again ;-). diff --git a/tests/nimble_autoconn_gnrc/Makefile b/tests/nimble_autoconn_gnrc/Makefile
index 4e189a0544..dba57ab696 100644
--- a/tests/nimble_autoconn_gnrc/Makefile
+++ b/tests/nimble_autoconn_gnrc/Makefile
@@ -15,6 +15,7 @@ USEMODULE += auto_init_gnrc_rpl
USEMODULE += gnrc_rpl
# Setup Nimble
+USEMODULE += nimble_netif
USEMODULE += nimble_autoconn_ipsp
TEST_ON_CI_WHITELIST += nrf52dk (with |
A generic application might select netdev_default instead of gnrc_netdev_default to pull in the default network interface. So pull in gnrc_netif if netdev_default is selected with GNRC.
7ecf993
to
5b25973
Compare
Contribution description
A generic application might select netdev_default instead of gnrc_netdev_default to pull in the default network interface.
So pull in
gnrc_netif
ifnetdev_default
is selected with GNRC.Testing procedure
For a basic application using TCP it should be enough to select
For
BOARD=nrf52840dongle
this however fails asgnrc_netif
is not pulled in by some other (driver) dependency.Issues/PRs references
#16739