esp-idf/components/espcoredump/linker.lf
Omar Chebib 8ac4b48b2f change(espcoredump): save RAM space by placing constants in flash
All the log messages of espcoredump component used to be in DRAM, which would
lower the available RAM space for the user application. Since the cache is always
enabled after an exception, constants can be put in flash.
2023-11-02 19:09:57 +08:00

67 lines
1.7 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_checksum (noflash)
core_dump_binary (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)