cpu/esp: integrate ESP specific netdev configuration in Kconfig
Contribution description
As the title says, this PR integrates the configuration of the following ESP specific netdevs into Kconfig:
esp_eth(4071cb045479cea630145b0961969a0468500310 87bc8f9e8e68a3be63c9214d1a74c59975a8772b 0a921572cadae6b99f5ae8e00f8e17624002dffe)esp_now(a8fafeb0be5f68707ce285ad7f8331f91798ccae)esp_wifi(c89cc088973d9e3e400646bd9bd8e80a62f7779f)
As prerequisites for these changes, the following changes were also included in this PR:
- shared
Kconfigbase board definition for all version ofesp32-ethernet-kitboards (fe011acf0044a18f190c55a2abbf73cc40a287bc) - default configuration definition for
esp_wifiin WPA2 Enterprise mode (2550f384938761461473f1e6aa7657a8ebda5d47)
Additionally, the PR includes some fixes and improvements found during Kconfig migration:
- updates, improvements and fixes in documentation of
esp_wifiandesp_now(2de5eb76db97311113bad2675499961a8b74472a) - small dependencies cleanup for ESP32 (ead9e33f3c50dc72d435ea80251801c56fde29f2)
- fix for the optional camera interface for the
esp32-wrover-kitboard (fe011acf0044a18f190c55a2abbf73cc40a287bc) HAS_*feature definitions in alphabetical order (fc495d2e8f54f62d2714fb83c635e2331705b16a)
The PR depends on PR #17419 and PR #17420. Therefore, the changes of these PRs are included in this PR for the moment (87a72e4dfe57098516234fac3d7fef294287e7c1 a0f2357c7d174cfd62c3f63ffb4187c2a5007543 6a136e647ad08774831a5f91205d2af45f7be193 b163768c110abd1535313cc5b8afe08b83cee3e6). Once these PRs are merged and this PR is rebased, they are dropped.
Testing procedure
Since GNRC and netdev modelling has not yet been finished, CI can't be used to check for correctness.
-
Create file
examples/gnrc_networking/app.config.testCONFIG_MODULE_NETDEV_DEFAULT=y -
Create file
examples/gnrc_networking/Kconfigconfig MODULE_NETOPT bool -
Execute
TEST_KCONFIG=1 make BOARD=esp32-olimex-evb -C examples/gnrc_networking menuconfig TEST_KCONFIG=1 make BOARD=esp8266-esp-12x -C examples/gnrc_networking menuconfigand check in
ESP configurations ---> Network Devices --->thatESP Ethernet interface usedis selected on ESP32 andESP NOW interface usedis selected on ESP8266.
-
Check in
menuconfigfor ESP32- the submenu for
esp_nowconfiguration whenESP-NOW interface usedis set - the submenu for
esp_wificonfiguration whenESP Wifi interface usedis set- when
WPA2 Personal Modeis selected - when
WPA2 Enterprise Modeis selected - when
SoftAP Modeis selected
- when
- the submenu for
-
Check that the same
esp_*,ztimerandnetoptmodules formake BOARD=esp32-olimex-evb -C examples/gnrc_networking info-modules USEMODULE=esp_now make BOARD=esp32-olimex-evb -C examples/gnrc_networking info-modules USEMODULE=esp_wifi make BOARD=esp32-olimex-evb -C examples/gnrc_networking info-modules USEMODULE=esp_wifi_ap make BOARD=esp32-olimex-evb -C examples/gnrc_networking info-modules USEMODULE=esp_wifi_enterprise make BOARD=esp32-olimex-evb -C examples/gnrc_networking info-modulesand
TEST_KCONFIG=1 make BOARD=esp32-olimex-evb -C examples/gnrc_networking info-modulesare used after selecting the according interfaces.
Issues/PRs references
Depends on PR #17419 and PR #17420
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. If you want me to ignore this issue, please mark it with the "State: don't stale" label. Thank you for your contributions.
This will need rework once #20438 is in.
It is in...