fdcavalcanti opened a new pull request, #17417:
URL: https://github.com/apache/nuttx/pull/17417
This PR deprecates the legacy ESP32-C3 board implementation and renames the
generic implementation to become the main supported board.
# Summary
- documentation: update ESP32-C3 board names for legacy and new devkit
- boards/risc-v/esp32c3: deprecate esp32c3 boards based on esp32c3-legacy
arch
- arch/risc-v/esp32c3: rename ESP32-C3 Generic configs
This change makes the `esp32c3-generic` the main ESP32-C3 supported board:
`esp32c3-devkit`. The now `esp32c3-legacy` is not maintained anymore.
Difference is that `esp32c3-devkit` shares the same common driver
implementation as ESP32-C6 and ESP32-H2 which makes it easier to maintain.
## Main Changes
`esp32c3-devkit` -> `esp32c3-legacy`
`esp32c3-generic` -> `esp32c3-devkit`
`ARCH_CHIP_ESP32C3_LEGACY` created
`ARCH_CHIP_ESP32C3_GENERIC` is now `ARCH_CHIP_ESP32C3`
- Renames architecture configurations:
`ARCH_CHIP_ESP32C3_GENERIC` → `ARCH_CHIP_ESP32C3`
Introduces ARCH_CHIP_ESP32C3_LEGACY for the deprecated implementation
- Reorganizes board structure:
`esp32c3-devkit` → `esp32c3-legacy` (deprecated, no longer maintained)
`esp32c3-generic` → `esp32c3-devkit` (becomes the main supported board)
The new esp32c3-devkit uses the same driver implementation as ESP32-C6 and
ESP32-H2, improving code maintainability and consistency for Espressif RISC-V
platforms.
# Impact
- Impact on user: Yes, this is a breaking change for users.
- Applications using esp32c3-devkit:
Must migrate to esp32c3-legacy-devkit to keep the legacy implementation, or
Switch to the new esp32c3-devkit (formerly esp32c3-generic) which uses the
shared driver architecture
Update build scripts, CI/CD pipelines, and documentation that reference the
old board name
- Applications using esp32c3-generic:
The board is now named esp32c3-devkit
Update all references from esp32c3-generic to esp32c3-devkit in build
configurations and scripts
- Configuration changes:
If using `ARCH_CHIP_ESP32C3_GENERIC` in Kconfig, change to
`ARCH_CHIP_ESP32C3`
If using `ARCH_CHIP_ESP32C3` (old), change to `ARCH_CHIP_ESP32C3_LEGACY`
- Impact on build: Significant build system changes.
- Board path changes:
Old: `boards/risc-v/esp32c3/esp32c3-devkit/` → New:
`boards/risc-v/esp32c3-legacy/esp32c3-legacy-devkit/`
Old: `boards/risc-v/esp32c3/esp32c3-generic/` → New:
`boards/risc-v/esp32c3/esp32c3-devkit/`
- Defconfig updates:
`CONFIG_ARCH_BOARD` changed from "esp32c3-devkit" to "esp32c3-legacy-devkit"
for legacy boards
`CONFIG_ARCH_BOARD` changed from "esp32c3-generic" to "esp32c3-devkit" for
the new main board
`CONFIG_ARCH_CHIP` changed from "esp32c3" to "esp32c3-legacy" for legacy
architecture
`CONFIG_ARCH_CHIP` remains "esp32c3" for the new architecture (previously
"esp32c3-generic")
- Impact on hardware: Only affects ESP32-C3.
- Impact on documentation: Yes. Renamed boards to reflect changes.
- Impact on security: No.
- Impact on compatibility: Yes, breaking changes affecting backward
compatibility.
# Testing
Due to the high number of configs and the type of change, testing was done
in the following manner:
1. Executed the `refresh.sh` script to ` esp32c3` and `esp32c3-legacy`
2. Manually tested nsh configs of both legacy and new board
3. Modified Espressif internal CI for new board name all tests results are
as expected.
4. Built documentation locally to verify changes
## Results
All boards are building with no issue. Test on Espressif CI and QEMU gives
results as expected.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]