esp-idf/components/espcoredump/linker.lf
Erhan Kurubas 5ba3b99f2b feat(coredump): use SHA ROM functions for all targets except ESP32
For ESP32, continue using mbedtls due to a required ROM patch for the SHA implementation.
For other targets, we can now leverage the ROM functions.
2024-03-06 13:08:09 +01:00

70 lines
1.8 KiB
Plaintext

[sections:rtc_fast_coredump]
entries:
.rtc.fast.coredump+
[sections:rtc_coredump]
entries:
.rtc.coredump+
[sections:dram_coredump]
entries:
.dram2.coredump+
# Always include .iram2.coredump section in the final linker script file,
# even though it may be empty. The coredump component will ignore empty
# sections when generating the ELF dump.
[sections:iram_coredump]
entries:
.iram2.coredump+
[scheme:coredump_default]
entries:
dram_coredump -> dram0_data
rtc_coredump -> rtc_data
rtc_fast_coredump -> rtc_force_fast
iram_coredump -> iram0_data
[mapping:coredump_default]
archive: *
entries:
* (coredump_default);
rtc_fast_coredump -> rtc_force_fast SURROUND(coredump_rtc_fast),
rtc_coredump -> rtc_data SURROUND(coredump_rtc),
dram_coredump -> dram0_data SURROUND(coredump_dram),
iram_coredump -> iram0_data SURROUND(coredump_iram)
[mapping:espcoredump]
archive: libespcoredump.a
entries:
if ESP_PANIC_HANDLER_IRAM = y:
core_dump_uart (noflash)
core_dump_flash (noflash)
core_dump_common (noflash)
core_dump_port (noflash)
core_dump_elf (noflash)
core_dump_binary (noflash)
core_dump_crc (noflash)
# ESP32 uses mbedtls for the sha and mbedtls is in the flash
if IDF_TARGET_ESP32 = n:
core_dump_sha (noflash)
else:
* (default)
[mapping:spi_flash_override]
archive: libspi_flash.a
entries:
if ESP_PANIC_HANDLER_IRAM = y && ESP_COREDUMP_ENABLE_TO_FLASH = y:
esp_flash_api (noflash_text)
esp_flash_spi_init (noflash_text)
else:
* (default)
[mapping:sha256_coredump]
archive: libmbedcrypto.a
entries:
if ESP_COREDUMP_CHECKSUM_SHA256 = y :
if MBEDTLS_HARDWARE_SHA = n:
sha256 (noflash_text)
else:
esp_sha256 (noflash_text)