mirror of
https://github.com/espressif/esp-idf.git
synced 2025-08-08 12:10:59 +00:00
esp32: transfer coredump linker script blocks to ldgen
This commit is contained in:
@@ -37,9 +37,7 @@ SECTIONS
|
|||||||
. = ALIGN(4);
|
. = ALIGN(4);
|
||||||
_rtc_force_fast_start = ABSOLUTE(.);
|
_rtc_force_fast_start = ABSOLUTE(.);
|
||||||
|
|
||||||
_coredump_rtc_fast_start = ABSOLUTE(.);
|
mapping[rtc_force_fast]
|
||||||
mapping[rtc_fast_coredump]
|
|
||||||
_coredump_rtc_fast_end = ABSOLUTE(.);
|
|
||||||
|
|
||||||
*(.rtc.force_fast .rtc.force_fast.*)
|
*(.rtc.force_fast .rtc.force_fast.*)
|
||||||
. = ALIGN(4) ;
|
. = ALIGN(4) ;
|
||||||
@@ -58,12 +56,6 @@ SECTIONS
|
|||||||
{
|
{
|
||||||
_rtc_data_start = ABSOLUTE(.);
|
_rtc_data_start = ABSOLUTE(.);
|
||||||
|
|
||||||
/* coredump mapping */
|
|
||||||
_coredump_rtc_start = ABSOLUTE(.);
|
|
||||||
mapping[rtc_coredump]
|
|
||||||
_coredump_rtc_end = ABSOLUTE(.);
|
|
||||||
|
|
||||||
/* should be placed after coredump mapping */
|
|
||||||
mapping[rtc_data]
|
mapping[rtc_data]
|
||||||
|
|
||||||
*rtc_wake_stub*.*(.data .rodata .data.* .rodata.* .bss .bss.*)
|
*rtc_wake_stub*.*(.data .rodata .data.* .rodata.* .bss .bss.*)
|
||||||
@@ -202,12 +194,6 @@ SECTIONS
|
|||||||
*(.gnu.linkonce.s2.*)
|
*(.gnu.linkonce.s2.*)
|
||||||
*(.jcr)
|
*(.jcr)
|
||||||
|
|
||||||
/* coredump mapping */
|
|
||||||
_coredump_dram_start = ABSOLUTE(.);
|
|
||||||
mapping[dram_coredump]
|
|
||||||
_coredump_dram_end = ABSOLUTE(.);
|
|
||||||
|
|
||||||
/* should be placed after coredump mapping */
|
|
||||||
_esp_system_init_fn_array_start = ABSOLUTE(.);
|
_esp_system_init_fn_array_start = ABSOLUTE(.);
|
||||||
KEEP (*(SORT(.esp_system_init_fn) SORT(.esp_system_init_fn.*)))
|
KEEP (*(SORT(.esp_system_init_fn) SORT(.esp_system_init_fn.*)))
|
||||||
_esp_system_init_fn_array_end = ABSOLUTE(.);
|
_esp_system_init_fn_array_end = ABSOLUTE(.);
|
||||||
@@ -369,12 +355,6 @@ SECTIONS
|
|||||||
. = ALIGN(4);
|
. = ALIGN(4);
|
||||||
_iram_data_start = ABSOLUTE(.);
|
_iram_data_start = ABSOLUTE(.);
|
||||||
|
|
||||||
/* coredump mapping */
|
|
||||||
_coredump_iram_start = ABSOLUTE(.);
|
|
||||||
mapping[iram_coredump]
|
|
||||||
_coredump_iram_end = ABSOLUTE(.);
|
|
||||||
|
|
||||||
/* should be placed after coredump mapping */
|
|
||||||
mapping[iram0_data]
|
mapping[iram0_data]
|
||||||
|
|
||||||
_iram_data_end = ABSOLUTE(.);
|
_iram_data_end = ABSOLUTE(.);
|
||||||
|
@@ -39,9 +39,7 @@ SECTIONS
|
|||||||
. = ALIGN(4);
|
. = ALIGN(4);
|
||||||
_rtc_force_fast_start = ABSOLUTE(.);
|
_rtc_force_fast_start = ABSOLUTE(.);
|
||||||
|
|
||||||
_coredump_rtc_fast_start = ABSOLUTE(.);
|
mapping[rtc_force_fast]
|
||||||
mapping[rtc_fast_coredump]
|
|
||||||
_coredump_rtc_fast_end = ABSOLUTE(.);
|
|
||||||
|
|
||||||
*(.rtc.force_fast .rtc.force_fast.*)
|
*(.rtc.force_fast .rtc.force_fast.*)
|
||||||
. = ALIGN(4) ;
|
. = ALIGN(4) ;
|
||||||
@@ -60,12 +58,6 @@ SECTIONS
|
|||||||
{
|
{
|
||||||
_rtc_data_start = ABSOLUTE(.);
|
_rtc_data_start = ABSOLUTE(.);
|
||||||
|
|
||||||
/* coredump mapping */
|
|
||||||
_coredump_rtc_start = ABSOLUTE(.);
|
|
||||||
mapping[rtc_coredump]
|
|
||||||
_coredump_rtc_end = ABSOLUTE(.);
|
|
||||||
|
|
||||||
/* should be placed after coredump mapping */
|
|
||||||
mapping[rtc_data]
|
mapping[rtc_data]
|
||||||
|
|
||||||
*rtc_wake_stub*.*(.data .rodata .data.* .rodata.* .bss .bss.*)
|
*rtc_wake_stub*.*(.data .rodata .data.* .rodata.* .bss .bss.*)
|
||||||
@@ -181,12 +173,6 @@ SECTIONS
|
|||||||
*(.gnu.linkonce.s2.*)
|
*(.gnu.linkonce.s2.*)
|
||||||
*(.jcr)
|
*(.jcr)
|
||||||
|
|
||||||
/* coredump mapping */
|
|
||||||
_coredump_dram_start = ABSOLUTE(.);
|
|
||||||
mapping[dram_coredump]
|
|
||||||
_coredump_dram_end = ABSOLUTE(.);
|
|
||||||
|
|
||||||
/* should be placed after coredump mapping */
|
|
||||||
_esp_system_init_fn_array_start = ABSOLUTE(.);
|
_esp_system_init_fn_array_start = ABSOLUTE(.);
|
||||||
KEEP (*(SORT(.esp_system_init_fn) SORT(.esp_system_init_fn.*)))
|
KEEP (*(SORT(.esp_system_init_fn) SORT(.esp_system_init_fn.*)))
|
||||||
_esp_system_init_fn_array_end = ABSOLUTE(.);
|
_esp_system_init_fn_array_end = ABSOLUTE(.);
|
||||||
@@ -369,12 +355,6 @@ SECTIONS
|
|||||||
. = ALIGN(16);
|
. = ALIGN(16);
|
||||||
_iram_data_start = ABSOLUTE(.);
|
_iram_data_start = ABSOLUTE(.);
|
||||||
|
|
||||||
/* coredump mapping */
|
|
||||||
_coredump_iram_start = ABSOLUTE(.);
|
|
||||||
mapping[iram_coredump]
|
|
||||||
_coredump_iram_end = ABSOLUTE(.);
|
|
||||||
|
|
||||||
/* should be placed after coredump mapping */
|
|
||||||
mapping[iram0_data]
|
mapping[iram0_data]
|
||||||
|
|
||||||
_iram_data_end = ABSOLUTE(.);
|
_iram_data_end = ABSOLUTE(.);
|
||||||
|
@@ -45,9 +45,7 @@ SECTIONS
|
|||||||
. = ALIGN(4);
|
. = ALIGN(4);
|
||||||
_rtc_force_fast_start = ABSOLUTE(.);
|
_rtc_force_fast_start = ABSOLUTE(.);
|
||||||
|
|
||||||
_coredump_rtc_fast_start = ABSOLUTE(.);
|
mapping[rtc_force_fast]
|
||||||
mapping[rtc_fast_coredump]
|
|
||||||
_coredump_rtc_fast_end = ABSOLUTE(.);
|
|
||||||
|
|
||||||
*(.rtc.force_fast .rtc.force_fast.*)
|
*(.rtc.force_fast .rtc.force_fast.*)
|
||||||
. = ALIGN(4) ;
|
. = ALIGN(4) ;
|
||||||
@@ -65,12 +63,6 @@ SECTIONS
|
|||||||
{
|
{
|
||||||
_rtc_data_start = ABSOLUTE(.);
|
_rtc_data_start = ABSOLUTE(.);
|
||||||
|
|
||||||
/* coredump mapping */
|
|
||||||
_coredump_rtc_start = ABSOLUTE(.);
|
|
||||||
mapping[rtc_coredump]
|
|
||||||
_coredump_rtc_end = ABSOLUTE(.);
|
|
||||||
|
|
||||||
/* should be placed after coredump mapping */
|
|
||||||
mapping[rtc_data]
|
mapping[rtc_data]
|
||||||
|
|
||||||
*rtc_wake_stub*.*(.data .rodata .data.* .rodata.* .bss .bss.*)
|
*rtc_wake_stub*.*(.data .rodata .data.* .rodata.* .bss .bss.*)
|
||||||
@@ -208,12 +200,6 @@ SECTIONS
|
|||||||
*(.gnu.linkonce.s2.*)
|
*(.gnu.linkonce.s2.*)
|
||||||
*(.jcr)
|
*(.jcr)
|
||||||
|
|
||||||
/* coredump mapping */
|
|
||||||
_coredump_dram_start = ABSOLUTE(.);
|
|
||||||
mapping[dram_coredump]
|
|
||||||
_coredump_dram_end = ABSOLUTE(.);
|
|
||||||
|
|
||||||
/* should be placed after coredump mapping */
|
|
||||||
_esp_system_init_fn_array_start = ABSOLUTE(.);
|
_esp_system_init_fn_array_start = ABSOLUTE(.);
|
||||||
KEEP (*(SORT(.esp_system_init_fn) SORT(.esp_system_init_fn.*)))
|
KEEP (*(SORT(.esp_system_init_fn) SORT(.esp_system_init_fn.*)))
|
||||||
_esp_system_init_fn_array_end = ABSOLUTE(.);
|
_esp_system_init_fn_array_end = ABSOLUTE(.);
|
||||||
|
@@ -39,9 +39,7 @@ SECTIONS
|
|||||||
. = ALIGN(4);
|
. = ALIGN(4);
|
||||||
_rtc_force_fast_start = ABSOLUTE(.);
|
_rtc_force_fast_start = ABSOLUTE(.);
|
||||||
|
|
||||||
_coredump_rtc_fast_start = ABSOLUTE(.);
|
mapping[rtc_force_fast]
|
||||||
mapping[rtc_fast_coredump]
|
|
||||||
_coredump_rtc_fast_end = ABSOLUTE(.);
|
|
||||||
|
|
||||||
*(.rtc.force_fast .rtc.force_fast.*)
|
*(.rtc.force_fast .rtc.force_fast.*)
|
||||||
. = ALIGN(4) ;
|
. = ALIGN(4) ;
|
||||||
@@ -60,12 +58,6 @@ SECTIONS
|
|||||||
{
|
{
|
||||||
_rtc_data_start = ABSOLUTE(.);
|
_rtc_data_start = ABSOLUTE(.);
|
||||||
|
|
||||||
/* coredump mapping */
|
|
||||||
_coredump_rtc_start = ABSOLUTE(.);
|
|
||||||
mapping[rtc_coredump]
|
|
||||||
_coredump_rtc_end = ABSOLUTE(.);
|
|
||||||
|
|
||||||
/* should be placed after coredump mapping */
|
|
||||||
mapping[rtc_data]
|
mapping[rtc_data]
|
||||||
|
|
||||||
*rtc_wake_stub*.*(.data .rodata .data.* .rodata.* .bss .bss.*)
|
*rtc_wake_stub*.*(.data .rodata .data.* .rodata.* .bss .bss.*)
|
||||||
@@ -211,12 +203,6 @@ SECTIONS
|
|||||||
*(.gnu.linkonce.s2.*)
|
*(.gnu.linkonce.s2.*)
|
||||||
*(.jcr)
|
*(.jcr)
|
||||||
|
|
||||||
/* coredump mapping */
|
|
||||||
_coredump_dram_start = ABSOLUTE(.);
|
|
||||||
mapping[dram_coredump]
|
|
||||||
_coredump_dram_end = ABSOLUTE(.);
|
|
||||||
|
|
||||||
/* should be placed after coredump mapping */
|
|
||||||
_esp_system_init_fn_array_start = ABSOLUTE(.);
|
_esp_system_init_fn_array_start = ABSOLUTE(.);
|
||||||
KEEP (*(SORT(.esp_system_init_fn) SORT(.esp_system_init_fn.*)))
|
KEEP (*(SORT(.esp_system_init_fn) SORT(.esp_system_init_fn.*)))
|
||||||
_esp_system_init_fn_array_end = ABSOLUTE(.);
|
_esp_system_init_fn_array_end = ABSOLUTE(.);
|
||||||
@@ -386,12 +372,6 @@ SECTIONS
|
|||||||
. = ALIGN(4);
|
. = ALIGN(4);
|
||||||
_iram_data_start = ABSOLUTE(.);
|
_iram_data_start = ABSOLUTE(.);
|
||||||
|
|
||||||
/* coredump mapping */
|
|
||||||
_coredump_iram_start = ABSOLUTE(.);
|
|
||||||
mapping[iram_coredump]
|
|
||||||
_coredump_iram_end = ABSOLUTE(.);
|
|
||||||
|
|
||||||
/* should be placed after coredump mapping */
|
|
||||||
mapping[iram0_data]
|
mapping[iram0_data]
|
||||||
|
|
||||||
_iram_data_end = ABSOLUTE(.);
|
_iram_data_end = ABSOLUTE(.);
|
||||||
|
@@ -17,16 +17,22 @@ if IDF_TARGET_ESP32S2 = n:
|
|||||||
|
|
||||||
[scheme:coredump_default]
|
[scheme:coredump_default]
|
||||||
entries:
|
entries:
|
||||||
dram_coredump -> dram_coredump
|
dram_coredump -> dram0_data
|
||||||
rtc_coredump -> rtc_coredump
|
rtc_coredump -> rtc_data
|
||||||
rtc_fast_coredump -> rtc_fast_coredump
|
rtc_fast_coredump -> rtc_force_fast
|
||||||
if IDF_TARGET_ESP32S2 = n:
|
if IDF_TARGET_ESP32S2 = n:
|
||||||
iram_coredump -> iram_coredump
|
iram_coredump -> iram0_data
|
||||||
|
|
||||||
[mapping:coredump_default]
|
[mapping:coredump_default]
|
||||||
archive: *
|
archive: *
|
||||||
entries:
|
entries:
|
||||||
* (coredump_default)
|
* (coredump_default);
|
||||||
|
rtc_fast_coredump -> rtc_force_fast emit(coredump_rtc_fast),
|
||||||
|
rtc_coredump -> rtc_data emit(coredump_rtc),
|
||||||
|
dram_coredump -> dram0_data emit(coredump_dram)
|
||||||
|
if IDF_TARGET_ESP32S2 = n:
|
||||||
|
* (coredump_default);
|
||||||
|
iram_coredump -> iram0_data emit(coredump_iram)
|
||||||
|
|
||||||
[mapping:espcoredump]
|
[mapping:espcoredump]
|
||||||
archive: libespcoredump.a
|
archive: libespcoredump.a
|
||||||
|
Reference in New Issue
Block a user