soc: espressif: fix optimization flag boot fault
When DEBUG_OPTIMIZATION or NO_OPTIMIZATION is enabled, efuse reading fails during bootloader start. Move those calls into IRAM area so that reading when cache is disabled works without any faults. In HAL side, we need to use low level calls to read CPU id instead of Zephyr's default one. Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
This commit is contained in:
parent
dee7927a21
commit
1903a8f415
7 changed files with 7 additions and 8 deletions
|
@ -502,7 +502,6 @@ SECTIONS
|
|||
*libzephyr.a:secure_boot_secure_features.*(.literal .text .literal.* .text.*)
|
||||
*libzephyr.a:secure_boot_signatures_bootloader.*(.literal .text .literal.* .text.*)
|
||||
|
||||
*libzephyr.a:efuse_hal.*(.literal .text .literal.* .text.*)
|
||||
*libzephyr.a:esp_efuse_table.*(.literal .text .literal.* .text.*)
|
||||
*libzephyr.a:esp_efuse_fields.*(.literal .text .literal.* .text.*)
|
||||
*libzephyr.a:esp_efuse_api.*(.literal .text .literal.* .text.*)
|
||||
|
@ -604,6 +603,7 @@ SECTIONS
|
|||
*libzephyr.a:esp_psram_impl_quad.*(.rodata .rodata.*)
|
||||
|
||||
/* [mapping:hal] */
|
||||
*libzephyr.a:efuse_hal.*(.literal .text .literal.* .text.*)
|
||||
*libzephyr.a:mmu_hal.*(.rodata .rodata.*)
|
||||
*libzephyr.a:spi_flash_hal_iram.*(.rodata .rodata.*)
|
||||
*libzephyr.a:spi_flash_encrypt_hal_iram.*(.rodata .rodata.*)
|
||||
|
@ -711,7 +711,6 @@ SECTIONS
|
|||
*libzephyr.a:esp_clk.*(.rodata .rodata.* .sdata2 .sdata2.* .srodata .srodata.*)
|
||||
*libzephyr.a:rtc_clk_init.*(.rodata .rodata.* .sdata2 .sdata2.* .srodata .srodata.*)
|
||||
*libzephyr.a:rtc_time.*(.rodata .rodata.* .sdata2 .sdata2.* .srodata .srodata.*)
|
||||
*libzephyr.a:efuse_hal.*(.rodata .rodata.* .sdata2 .sdata2.* .srodata .srodata.*)
|
||||
*libzephyr.a:cpu_region_protect.*(.rodata .rodata.* .sdata2 .sdata2.* .srodata .srodata.*)
|
||||
|
||||
*libzephyr.a:periph_ctrl.*(.rodata .rodata.* .sdata2 .sdata2.* .srodata .srodata.*)
|
||||
|
|
|
@ -467,6 +467,7 @@ SECTIONS
|
|||
*libzephyr.a:cache_utils.*(.rodata .rodata.* .srodata .srodata.*)
|
||||
|
||||
/* [mapping:hal] */
|
||||
*libzephyr.a:efuse_hal.*(.literal .text .literal.* .text.*)
|
||||
*libzephyr.a:mmu_hal.*(.rodata .rodata.* .srodata .srodata.*)
|
||||
*libzephyr.a:spi_flash_hal_iram.*(.rodata .rodata.* .srodata .srodata.*)
|
||||
*libzephyr.a:spi_flash_encrypt_hal_iram.*(.rodata .rodata.* .srodata .srodata.*)
|
||||
|
|
|
@ -560,6 +560,7 @@ SECTIONS
|
|||
*libzephyr.a:cache_utils.*(.rodata .rodata.* .srodata .srodata.*)
|
||||
|
||||
/* [mapping:hal] */
|
||||
*libzephyr.a:efuse_hal.*(.literal .text .literal.* .text.*)
|
||||
*libzephyr.a:mmu_hal.*(.rodata .rodata.* .srodata .srodata.*)
|
||||
*libzephyr.a:spi_flash_hal_iram.*(.rodata .rodata.* .srodata .srodata.*)
|
||||
*libzephyr.a:spi_flash_encrypt_hal_iram.*(.rodata .rodata.* .srodata .srodata.*)
|
||||
|
|
|
@ -421,7 +421,6 @@ SECTIONS
|
|||
*libzephyr.a:esp_rom_systimer.*(.literal .literal.* .text .text.*)
|
||||
*libzephyr.a:esp_rom_wdt.*(.literal .literal.* .text .text.*)
|
||||
*libzephyr.a:esp_rom_hp_regi2c_esp32c6.*(.literal .literal.* .text .text.*)
|
||||
*libzephyr.a:efuse_hal.*(.literal .literal.* .text .text.*)
|
||||
|
||||
/* [mapping:esp_mm] */
|
||||
*libzephyr.a:esp_cache.*(.literal .literal.* .text .text.*)
|
||||
|
@ -572,6 +571,7 @@ SECTIONS
|
|||
*libzephyr.a:cache_utils.*(.rodata .rodata.* .srodata .srodata.*)
|
||||
|
||||
/* [mapping:hal] */
|
||||
*libzephyr.a:efuse_hal.*(.literal .text .literal.* .text.*)
|
||||
*libzephyr.a:mmu_hal.*(.rodata .rodata.* .srodata .srodata.*)
|
||||
*libzephyr.a:spi_flash_hal_iram.*(.rodata .rodata.* .srodata .srodata.*)
|
||||
*libzephyr.a:spi_flash_encrypt_hal_iram.*(.rodata .rodata.* .srodata .srodata.*)
|
||||
|
@ -647,7 +647,6 @@ SECTIONS
|
|||
*libzephyr.a:esp_rom_efuse.*(.rodata .rodata.* .srodata .srodata.*)
|
||||
*libzephyr.a:esp_rom_systimer.*(.rodata .rodata.* .srodata .srodata.*)
|
||||
*libzephyr.a:esp_rom_hp_regi2c_esp32c6.*(.rodata .rodata.* .srodata .srodata.*)
|
||||
*libzephyr.a:efuse_hal.*(.rodata .rodata.* .srodata .srodata.*)
|
||||
|
||||
. = ALIGN(4);
|
||||
#include <snippets-rwdata.ld>
|
||||
|
|
|
@ -510,7 +510,6 @@ SECTIONS
|
|||
*libzephyr.a:secure_boot.*(.literal .text .literal.* .text.*)
|
||||
*libzephyr.a:secure_boot_secure_features.*(.literal .text .literal.* .text.*)
|
||||
*libzephyr.a:secure_boot_signatures_bootloader.*(.literal .text .literal.* .text.*)
|
||||
*libzephyr.a:efuse_hal.*(.literal .text .literal.* .text.*)
|
||||
*libzephyr.a:esp_efuse_table.*(.literal .text .literal.* .text.*)
|
||||
*libzephyr.a:esp_efuse_fields.*(.literal .text .literal.* .text.*)
|
||||
*libzephyr.a:esp_efuse_api.*(.literal .text .literal.* .text.*)
|
||||
|
@ -619,6 +618,7 @@ SECTIONS
|
|||
*libzephyr.a:esp_psram_impl_quad.*(.rodata .rodata.*)
|
||||
|
||||
/* [mapping:hal] */
|
||||
*libzephyr.a:efuse_hal.*(.literal .text .literal.* .text.*)
|
||||
*libzephyr.a:mmu_hal.*(.rodata .rodata.*)
|
||||
*libzephyr.a:spi_flash_hal_iram.*(.rodata .rodata.*)
|
||||
*libzephyr.a:spi_flash_encrypt_hal_iram.*(.rodata .rodata.*)
|
||||
|
@ -736,8 +736,6 @@ SECTIONS
|
|||
*libzephyr.a:esp_flash_api.*(.rodata .rodata.* .sdata2 .sdata2.* .srodata .srodata.*)
|
||||
*libzephyr.a:esp_flash_spi_init.*(.rodata .rodata.* .sdata2 .sdata2.* .srodata .srodata.*)
|
||||
|
||||
*libzephyr.a:efuse_hal.*(.rodata .rodata.* .sdata2 .sdata2.* .srodata .srodata.*)
|
||||
|
||||
. = ALIGN(4);
|
||||
_loader_data_end = ABSOLUTE(.);
|
||||
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
||||
|
|
|
@ -398,6 +398,7 @@ SECTIONS
|
|||
*libzephyr.a:esp_psram_impl_octal.*(.literal .literal.* .text .text.*)
|
||||
|
||||
/* [mapping:hal] */
|
||||
*libzephyr.a:efuse_hal.*(.literal .text .literal.* .text.*)
|
||||
*libzephyr.a:mmu_hal.*(.literal .text .literal.* .text.*)
|
||||
*libzephyr.a:spi_flash_hal_iram.*(.literal .text .literal.* .text.*)
|
||||
*libzephyr.a:spi_flash_encrypt_hal_iram.*(.literal .text .literal.* .text.*)
|
||||
|
|
2
west.yml
2
west.yml
|
@ -162,7 +162,7 @@ manifest:
|
|||
groups:
|
||||
- hal
|
||||
- name: hal_espressif
|
||||
revision: a459b40356f5e6fb55d92bcb458cec45365d5ec5
|
||||
revision: 202c59552dc98e5cd02386313e1977ecb17a131f
|
||||
path: modules/hal/espressif
|
||||
west-commands: west/west-commands.yml
|
||||
groups:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue