This is an automated email from the ASF dual-hosted git repository. xiaoxiang pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/nuttx.git
commit 8902e511d333667813e7cbacf5d734372a31d9c2 Author: Eren Terzioglu <[email protected]> AuthorDate: Wed Nov 5 14:47:02 2025 +0100 boards/risc-v/esp32[-c3|-c6|-h2]: Add deep sleep board support Add deep sleep board support for risc-v based Espressif chips Signed-off-by: Eren Terzioglu <[email protected]> --- boards/risc-v/esp32c3/common/scripts/esp32c3_sections.ld | 3 ++- boards/risc-v/esp32c6/common/scripts/esp32c6_sections.ld | 5 ++++- boards/risc-v/esp32h2/common/scripts/esp32h2_sections.ld | 5 ++++- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/boards/risc-v/esp32c3/common/scripts/esp32c3_sections.ld b/boards/risc-v/esp32c3/common/scripts/esp32c3_sections.ld index a36aeb7b7b5..a17778cd55a 100644 --- a/boards/risc-v/esp32c3/common/scripts/esp32c3_sections.ld +++ b/boards/risc-v/esp32c3/common/scripts/esp32c3_sections.ld @@ -569,7 +569,8 @@ SECTIONS .rtc.text : { . = ALIGN(4); - *(.rtc.literal .rtc.text) + *(.rtc.literal .rtc.literal.*) + *(.rtc.text .rtc.text.*) *(.rtc.entry.text) . += 16; . = ALIGN(4); diff --git a/boards/risc-v/esp32c6/common/scripts/esp32c6_sections.ld b/boards/risc-v/esp32c6/common/scripts/esp32c6_sections.ld index ea1e08d7c0f..cb0c9459457 100644 --- a/boards/risc-v/esp32c6/common/scripts/esp32c6_sections.ld +++ b/boards/risc-v/esp32c6/common/scripts/esp32c6_sections.ld @@ -147,6 +147,7 @@ SECTIONS *libarch.a:*regi2c_ctrl.*(.text .text.* .literal .literal.*) *libarch.a:*gpio_periph.*(.text .text.* .literal .literal.*) *libarch.a:*modem_clock_hal.*(.text .text.* .literal .literal.*) + *libarch.a:*sleep_modes.*(.text .text.* .literal .literal.*) *libarch.a:*esp_rom_systimer.*(.text .text.* .literal .literal.*) *libarch.a:*esp_rom_wdt.*(.text .text.* .literal .literal.*) *libarch.a:*ocode_init.*(.text .text.* .literal .literal.*) @@ -310,6 +311,7 @@ SECTIONS *libarch.a:*pmu_init.*(.rodata .rodata.*) *libarch.a:*modem_clock.*(.rodata .rodata.*) *libarch.a:*modem_clock_hal.*(.rodata .rodata.*) + *libarch.a:*sleep_modes.*(.rodata .rodata.*) *libarch.a:*regi2c_ctrl.*(.rodata .rodata.*) *libarch.a:*gpio_periph.*(.rodata .rodata.*) *libarch.a:*esp_rom_systimer.*(.rodata .rodata.*) @@ -558,7 +560,8 @@ SECTIONS . = ALIGN(4); _rtc_fast_start = ABSOLUTE(.); _rtc_text_start = ABSOLUTE(.); - *(.rtc.literal .rtc.text) + *(.rtc.literal .rtc.literal.*) + *(.rtc.text .rtc.text.*) *(.rtc.entry.text) /* 16B padding for possible CPU prefetch and 4B alignment for PMS split lines */ . += 16; diff --git a/boards/risc-v/esp32h2/common/scripts/esp32h2_sections.ld b/boards/risc-v/esp32h2/common/scripts/esp32h2_sections.ld index 677d916f363..f7c3526db0c 100644 --- a/boards/risc-v/esp32h2/common/scripts/esp32h2_sections.ld +++ b/boards/risc-v/esp32h2/common/scripts/esp32h2_sections.ld @@ -149,6 +149,7 @@ SECTIONS *libarch.a:*rtc_clk_init.*(.text .text.* .literal .literal.*) *libarch.a:*pmu_sleep.*(.text .text.* .literal .literal.*) *libarch.a:*pmu_param.*(.text .text.* .literal .literal.*) + *libarch.a:*sleep_modes.*(.text .text.* .literal .literal.*) *libarch.a:*rtc_time.*(.text .text.* .literal .literal.*) *libarch.a:*systimer.*(.text .text.* .literal .literal.*) *libarch.a:*systimer_hal.*(.text .text.* .literal .literal.*) @@ -312,6 +313,7 @@ SECTIONS *libarch.a:*rtc_clk_init.*(.rodata .rodata.*) *libarch.a:*pmu_param.*(.rodata .rodata.*) *libarch.a:*pmu_sleep.*(.rodata .rodata.*) + *libarch.a:*sleep_modes.*(.rodata .rodata.*) *libarch.a:*rtc_time.*(.rodata .rodata.*) *libarch.a:*systimer.*(.rodata .rodata.*) *libarch.a:*systimer_hal.*(.rodata .rodata.*) @@ -557,7 +559,8 @@ SECTIONS _rtc_text_start = ABSOLUTE(.); *(.rtc.entry.text) - *(.rtc.literal .rtc.text) + *(.rtc.literal .rtc.literal.*) + *(.rtc.text .rtc.text.*) _rtc_text_end = ABSOLUTE(.); } >rtc_iram_seg
