-
Notifications
You must be signed in to change notification settings - Fork 1.5k
esp32: Explicitly fail on boot-up for unsupported ESP32 versions #11563
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
esp32: Explicitly fail on boot-up for unsupported ESP32 versions #11563
Conversation
This commit is intended to update the EFUSE's register content and update related configs: - Remove duplicated configs from `esp32_soc.h`; - Add missing header files from APB registers; - Add missing macro definitions from EFUSE; - Update related code to use the new macros;
ESP32 is supported on NuttX starting from chip revision 3.0. This, however, didn't prevent the user from using older chip revisions, which caused unexpected behaviors. This commit checks chip revision before finishing booting NuttX.
Espressif's MCUboot should be built from sources.
|
I noticed that my esp32-devkitc board does not boot withi this PR. |
|
Also, |
Hi @masayuki2009! Chip revisions before the v3.0 require a lot of workarounds to fix all the known issues and we don't aim to fully support them on NuttX (you can check https://www.espressif.com/sites/default/files/documentation/esp32_chip_revision_v3_0_user_guide_en.pdf as a reference). This limitation was already true, we just made it clear with this MR because we have received some bug reports regarding old chips. You can ignore the check by setting |
Are you using Espressif's port of QEMU? It is possible to set virtual refuses to make it behave as a chip revision > 3.0: https://github.com/espressif/esp-toolchain-docs/blob/main/qemu/esp32/README.md#emulating-esp32-eco3 |
Yes.
Thanks for the information. |
you can use this as the content of the bin file to the virtual refuses ;) |
|
@tmedicci |
what problems does older esp32 versions have? |
Probably because you are using recent ESP32 chips (ECO 3), the issue on happens on pretty old silicon versions. |
Summary
esp32: Explicitly fail on boot-up for unsupported ESP32 versions:
esp32/hardware/esp32_efuse.h: Update macros for registers:
esp32_soc.h;esp32/hardware: Rename
efuse_reg.htoesp32_efuse.h.Impact
Prevent users to use unsupported older versions of ESP32.
Testing
Internal CI testing + ESP32 from different versions.