-
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
cpu/esp: integrate ESP specific netdev configuration in Kconfig #17426
Open
gschorcht
wants to merge
14
commits into
RIOT-OS:master
Choose a base branch
from
gschorcht:cpu/esp/kconfig_netdevs
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+815
−273
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
The 128-bit key for encrypted ESP-NOW communication is defined by a 16-byte array of type `uint8_t [16]` specified by the `ESP_NOW_KEY' configuration parameter in RIOT. By default, this configuration parameter is specified as NULL (no encryption). While in C it is possible to simply define this configuration parameter by something like `#define ESP_NOW_KEY { 0x0f, 0x1e, ... }`, it is not possible in Kconfig to define such a static initializer. Therefore, in regard to the migration to Kconfig, the key is now defined as a string with hex values separated by spaces `#define ESP_NOW_KEY "0f 1e ..."`, which is easy to implement in Kconfig.
`esp_freertos` is enabled by default by `esp_common`, no need to enable it here. `esp_wifi` and `esp_now` enable `esp_wifi_any`, no need to filter for both here.
All versions of `esp32-ethernet-kit` boards have same features. Therefore, a base board definition is used for Kconfig for all versions.
For the migration to Kconfig, default configuration parameters are defined for `esp_wifi_enterprise`.
c89cc08
to
e1bdcc7
Compare
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... |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
Area: boards
Area: Board ports
Area: cpu
Area: CPU/MCU ports
Area: doc
Area: Documentation
Area: Kconfig
Area: Kconfig integration
Platform: ESP
Platform: This PR/issue effects ESP-based platforms
State: don't stale
State: Tell state-bot to ignore this issue
State: waiting for other PR
State: The PR requires another PR to be merged first
TF: Config
Marks issues and PRs related to the work of the Configuration Task Force
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Contribution description
As the title says, this PR integrates the configuration of the following ESP specific
netdev
s into Kconfig:esp_eth
(4071cb0 87bc8f9 0a92157)esp_now
(a8fafeb)esp_wifi
(c89cc08)As prerequisites for these changes, the following changes were also included in this PR:
Kconfig
base board definition for all version ofesp32-ethernet-kit
boards (fe011ac)esp_wifi
in WPA2 Enterprise mode (2550f38)Additionally, the PR includes some fixes and improvements found during
Kconfig
migration:esp_wifi
andesp_now
(2de5eb7)esp32-wrover-kit
board (fe011ac)HAS_*
feature definitions in alphabetical order (fc495d2)The PR depends on PR #17419 and PR #17420. Therefore, the changes of these PRs are included in this PR for the moment (87a72e4 a0f2357 6a136e6 b163768). 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.test
Create file
examples/gnrc_networking/Kconfig
Execute
and check in
ESP configurations ---> Network Devices --->
thatESP Ethernet interface used
is selected on ESP32 andESP NOW interface used
is selected on ESP8266.Check in
menuconfig
for ESP32esp_now
configuration whenESP-NOW interface used
is setesp_wifi
configuration whenESP Wifi interface used
is setWPA2 Personal Mode
is selectedWPA2 Enterprise Mode
is selectedSoftAP Mode
is selectedCheck that the same
esp_*
,ztimer
andnetopt
modules forand
are used after selecting the according interfaces.
Issues/PRs references
Depends on PR #17419 and PR #17420