-
Notifications
You must be signed in to change notification settings - Fork 834
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
interim ESP32-S3 changes & diagnostics #5956
interim ESP32-S3 changes & diagnostics #5956
Conversation
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.
Holding merge till #5955 is merged.
#if defined(CONFIG_IDF_TARGET_ESP32C3) | ||
/* not available for C3 at this time */ | ||
#else | ||
// ESP_LOGI(TAG, "CONFIG_ESP32_DEFAULT_CPU_FREQ_MHZ = %u MHz", CONFIG_ESP32_DEFAULT_CPU_FREQ_MHZ); |
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.
Please cleanup this line.
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.
As yes, good. Thanks for finding that. That was not intended.
I've added something a bit more clear and graceful, although not yet the final product to fully and properly support all of the chipsets. This should bring operational support without HW acceleration for the ESP32-S3 (cc: @PaulMartinsen)
btw - note there's a bit of chicken-and-egg issue with the wolfSSL user_settings.h
and target Espressif chip selection at this time. My user settings has this logic at the tail of of my file to detect the Espressif target from the sdkconfig.h
file and conditionally turn off HW acceleration:
#include "sdkconfig.h"
/* adjust wait-timeout count if you see timeout in rsa hw acceleration */
#define ESP_RSA_TIMEOUT_CNT 0x249F00
#if defined(CONFIG_IDF_TARGET_ESP32C3)
#define NO_ESP32WROOM32_CRYPT
#define NO_WOLFSSL_ESP32WROOM32_CRYPT_HASH
#define NO_WOLFSSL_ESP32WROOM32_CRYPT_AES
#define NO_WOLFSSL_ESP32WROOM32_CRYPT_RSA_PRI
#elif defined(CONFIG_IDF_TARGET_ESP32S3)
#define NO_ESP32WROOM32_CRYPT
#define NO_WOLFSSL_ESP32WROOM32_CRYPT_HASH
#define NO_WOLFSSL_ESP32WROOM32_CRYPT_AES
#define NO_WOLFSSL_ESP32WROOM32_CRYPT_RSA_PRI
#elif defined(CONFIG_IDF_TARGET_ESP_OTHER)
/* other */
#else
/* default is ESP32-WROOM */
#endif
One can of course simply ensure hardware acceleration is always off in the user_settings.h
without detecting architecture.
Without turning off hardware acceleration for things like the ESP32-S3
at this time, there will be unexpected and unintuitive compile-time errors.
Also note during this update I saw what appeared to be runtime memory corruption not detected at flash time when doing this:
idf.py -b 921600 -p /dev/ttyS8 build flash monitor
I fixed it by doing a idf.py fullclean
, deleting the existing sdkconfig
and then loading at a slower baud rate:
idf.py -b 230400 -p /dev/ttyS8 set-target esp32-s3 build flash monitor
And for the regular ESP32-WROOM32:
idf.py -b 230400 -p /dev/ttyS15 set-target esp32 build flash monitor
Also - I added the known-good sdkconfig.defaults
currently used in my WIP Espressif multichip branch.
The ESP32 wolfssl_test
was confirmed to work with both the ESP32 and ESP32-S3.
Curiously the last wolfSSL build check for "Test Espressif examples" validation created by @bandi13 failed even though there was no code change. It was only by a small app size amount, but nonetheless a failure. In response, I've changed all 4 of the local examples to now have "large app" settings in |
Description
This update adds some minor, interim changes to the Espressif-specific library to support the ESP32-S3 as related to #5948.
The Espressif wolfssl_test example also has new optional git version information as noted in #5955
See also the new
VisualGDB_wolfssl_test_IDF_v5_ESP32S3.vgdbproj
VisualGDB file.Add this to the end of
user_settings.h
to detect and disable hardware acceleration for the ESP32-S3:Fixes zd# n/a
Testing
Run the
./setup.sh
for Espressif component install as explained in the Setup for Linux.This is not full ESP32-S3 support. Other ESP32-S3 changes are currently WIP on the Espressif_Multichip
Checklist