You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by "fdcavalcanti (via GitHub)" <gi...@apache.org> on 2025/12/01 17:49:35 UTC

[PR] Feature/rename esp32c3 legacy [nuttx]

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: commits-unsubscribe@nuttx.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] arch/risc-v: rename ESP32-C3 boards [nuttx]

Posted by "xiaoxiang781216 (via GitHub)" <gi...@apache.org>.
xiaoxiang781216 merged PR #17417:
URL: https://github.com/apache/nuttx/pull/17417


-- 
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: commits-unsubscribe@nuttx.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] arch/risc-v: rename ESP32-C3 boards [nuttx]

Posted by "fdcavalcanti (via GitHub)" <gi...@apache.org>.
fdcavalcanti commented on PR #17417:
URL: https://github.com/apache/nuttx/pull/17417#issuecomment-3601469087

   > Hi @fdcavalcanti @tmedicci @eren-terzioglu,
   > 
   > I believe we also need to rename this configuration. https://github.com/fdcavalcanti/nuttx/tree/feature/rename-esp32c3-legacy/boards/risc-v/esp32c3
   > 
   > esp32c3-generic/configs/pm -> esp32c3-devkit/configs/pm
   > 
   > https://github.com/fdcavalcanti/nuttx/tree/feature/rename-esp32c3-legacy/boards/risc-v/esp32c3/esp32c3-generic/configs/pm
   > 
   > there is an error
   > 
   > ```
   > ====================================================================================
   > Configuration/Tool: esp32c3-devkit/bmp180
   > 2025-12-01 18:21:16
   > ------------------------------------------------------------------------------------
   >   Cleaning...
   >   Configuring...
   >   Building NuttX...
   > chip/esp-hal-3rdparty/nuttx/src/components/esp_driver_gpio/src/gpio.c: In function 'gpio_pullup_en':
   > Error: chip/esp-hal-3rdparty/nuttx/src/components/esp_driver_gpio/src/gpio.c:60:46: error: 'SOC_GPIO_SUPPORT_RTC_INDEPENDENT' undeclared (first use in this function)
   >    60 |     if (!rtc_gpio_is_valid_gpio(gpio_num) || SOC_GPIO_SUPPORT_RTC_INDEPENDENT) {
   >       |                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   > chip/esp-hal-3rdparty/nuttx/src/components/esp_driver_gpio/src/gpio.c:60:46: note: each undeclared identifier is reported only once for each function it appears in
   > chip/esp-hal-3rdparty/nuttx/src/components/esp_driver_gpio/src/gpio.c: In function 'gpio_pullup_dis':
   > Error: chip/esp-hal-3rdparty/nuttx/src/components/esp_driver_gpio/src/gpio.c:79:46: error: 'SOC_GPIO_SUPPORT_RTC_INDEPENDENT' undeclared (first use in this function)
   >    79 |     if (!rtc_gpio_is_valid_gpio(gpio_num) || SOC_GPIO_SUPPORT_RTC_INDEPENDENT) {
   >       |                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   > chip/esp-hal-3rdparty/nuttx/src/components/esp_driver_gpio/src/gpio.c: In function 'gpio_pulldown_en':
   > Error: chip/esp-hal-3rdparty/nuttx/src/components/esp_driver_gpio/src/gpio.c:98:46: error: 'SOC_GPIO_SUPPORT_RTC_INDEPENDENT' undeclared (first use in this function)
   >    98 |     if (!rtc_gpio_is_valid_gpio(gpio_num) || SOC_GPIO_SUPPORT_RTC_INDEPENDENT) {
   >       |                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   > chip/esp-hal-3rdparty/nuttx/src/components/esp_driver_gpio/src/gpio.c: In function 'gpio_pulldown_dis':
   > Error: chip/esp-hal-3rdparty/nuttx/src/components/esp_driver_gpio/src/gpio.c:117:46: error: 'SOC_GPIO_SUPPORT_RTC_INDEPENDENT' undeclared (first use in this function)
   >   117 |     if (!rtc_gpio_is_valid_gpio(gpio_num) || SOC_GPIO_SUPPORT_RTC_INDEPENDENT) {
   >       |                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   > make[1]: *** [Makefile:144: chip/esp-hal-3rdparty/nuttx/src/components/esp_driver_gpio/src/gpio.o] Error 1
   > make[1]: Target 'libarch.a' not remade because of errors.
   > make: *** [tools/LibTargets.mk:170: arch/risc-v/src/libarch.a] Error 2
   > make: Target 'all' not remade because of errors.
   > /github/workspace/sources/nuttx/tools/testbuild.sh: line 385: /github/workspace/sources/nuttx/../nuttx/nuttx.manifest: No such file or directory
   >   [1/1] Normalize esp32c3-devkit/bmp180
   > ====================================================================================
   > ```
   
   Must have been happened after rebase. Will fix, thanks!


-- 
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: commits-unsubscribe@nuttx.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] arch/risc-v: rename ESP32-C3 boards [nuttx]

Posted by "simbit18 (via GitHub)" <gi...@apache.org>.
simbit18 commented on PR #17417:
URL: https://github.com/apache/nuttx/pull/17417#issuecomment-3601231350

   
   Hi @fdcavalcanti @tmedicci @eren-terzioglu, there is an error
   
   ```
   ====================================================================================
   Configuration/Tool: esp32c3-devkit/bmp180
   2025-12-01 18:21:16
   ------------------------------------------------------------------------------------
     Cleaning...
     Configuring...
     Building NuttX...
   chip/esp-hal-3rdparty/nuttx/src/components/esp_driver_gpio/src/gpio.c: In function 'gpio_pullup_en':
   Error: chip/esp-hal-3rdparty/nuttx/src/components/esp_driver_gpio/src/gpio.c:60:46: error: 'SOC_GPIO_SUPPORT_RTC_INDEPENDENT' undeclared (first use in this function)
      60 |     if (!rtc_gpio_is_valid_gpio(gpio_num) || SOC_GPIO_SUPPORT_RTC_INDEPENDENT) {
         |                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   chip/esp-hal-3rdparty/nuttx/src/components/esp_driver_gpio/src/gpio.c:60:46: note: each undeclared identifier is reported only once for each function it appears in
   chip/esp-hal-3rdparty/nuttx/src/components/esp_driver_gpio/src/gpio.c: In function 'gpio_pullup_dis':
   Error: chip/esp-hal-3rdparty/nuttx/src/components/esp_driver_gpio/src/gpio.c:79:46: error: 'SOC_GPIO_SUPPORT_RTC_INDEPENDENT' undeclared (first use in this function)
      79 |     if (!rtc_gpio_is_valid_gpio(gpio_num) || SOC_GPIO_SUPPORT_RTC_INDEPENDENT) {
         |                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   chip/esp-hal-3rdparty/nuttx/src/components/esp_driver_gpio/src/gpio.c: In function 'gpio_pulldown_en':
   Error: chip/esp-hal-3rdparty/nuttx/src/components/esp_driver_gpio/src/gpio.c:98:46: error: 'SOC_GPIO_SUPPORT_RTC_INDEPENDENT' undeclared (first use in this function)
      98 |     if (!rtc_gpio_is_valid_gpio(gpio_num) || SOC_GPIO_SUPPORT_RTC_INDEPENDENT) {
         |                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   chip/esp-hal-3rdparty/nuttx/src/components/esp_driver_gpio/src/gpio.c: In function 'gpio_pulldown_dis':
   Error: chip/esp-hal-3rdparty/nuttx/src/components/esp_driver_gpio/src/gpio.c:117:46: error: 'SOC_GPIO_SUPPORT_RTC_INDEPENDENT' undeclared (first use in this function)
     117 |     if (!rtc_gpio_is_valid_gpio(gpio_num) || SOC_GPIO_SUPPORT_RTC_INDEPENDENT) {
         |                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   make[1]: *** [Makefile:144: chip/esp-hal-3rdparty/nuttx/src/components/esp_driver_gpio/src/gpio.o] Error 1
   make[1]: Target 'libarch.a' not remade because of errors.
   make: *** [tools/LibTargets.mk:170: arch/risc-v/src/libarch.a] Error 2
   make: Target 'all' not remade because of errors.
   /github/workspace/sources/nuttx/tools/testbuild.sh: line 385: /github/workspace/sources/nuttx/../nuttx/nuttx.manifest: No such file or directory
     [1/1] Normalize esp32c3-devkit/bmp180
   ====================================================================================
   ```


-- 
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: commits-unsubscribe@nuttx.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org