[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_text)
        core_dump_flash (noflash_text)
        core_dump_common (noflash_text)
        core_dump_port (noflash_text)
        core_dump_elf (noflash_text)
    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)