From 2afa38b2400c33289f1c1ca90d8a68a0bf32dc5d Mon Sep 17 00:00:00 2001 From: bjoernQ Date: Mon, 19 Sep 2022 09:14:22 +0200 Subject: [PATCH] ESP32-S2: add wifi sections and fix linker script --- esp32s2-hal/ld/link-esp32s2.x | 51 +++++++++++++++++++++++++++-------- 1 file changed, 40 insertions(+), 11 deletions(-) diff --git a/esp32s2-hal/ld/link-esp32s2.x b/esp32s2-hal/ld/link-esp32s2.x index 05b6c444b..99b416af2 100644 --- a/esp32s2-hal/ld/link-esp32s2.x +++ b/esp32s2-hal/ld/link-esp32s2.x @@ -28,9 +28,43 @@ SECTIONS { _rodata_start = ABSOLUTE(.); . = ALIGN (4); *(.rodata .rodata.*) + . = ALIGN(4); _rodata_end = ABSOLUTE(.); } > RODATA + .rodata.wifi : + { + . = ALIGN(4); + *( .rodata_wlog_*.* ) + . = ALIGN(4); + } > RODATA + + + .rwtext : ALIGN(4) + { + . = ALIGN (4); + *(.rwtext.literal .rwtext .rwtext.literal.* .rwtext.*) + . = ALIGN (4); + } > RWTEXT + + /* wifi data */ + .rwtext.wifi : ALIGN(4) + { + . = ALIGN(4); + *( .wifi0iram .wifi0iram.*) + *( .wifirxiram .wifirxiram.*) + *( .wifislprxiram .wifislprxiram.*) + *( .wifislpiram .wifislpiram.*) + *( .phyiram .phyiram.*) + *( .iram1 .iram1.*) + . = ALIGN(4); + } > RWTEXT + + .iram0_reserved_for_text (NOLOAD) : ALIGN(4) + { + . = ORIGIN(RWDATA) + SIZEOF(.rwtext) + SIZEOF(.rwtext.wifi); + } > RWDATA + .data : ALIGN(4) { _data_start = ABSOLUTE(.); @@ -39,6 +73,12 @@ SECTIONS { _data_end = ABSOLUTE(.); } > RWDATA AT > RODATA + .data.wifi : + { + . = ALIGN(4); + *( .dram1 .dram1.*) + } > RWDATA AT > RODATA + /* LMA of .data */ _sidata = LOADADDR(.data); @@ -56,17 +96,6 @@ SECTIONS { *(.noinit .noinit.*) } > RWDATA - .iram0_reserved_for_data (NOLOAD) : ALIGN(4) - { - . = ORIGIN(RWTEXT) + SIZEOF(.data) + SIZEOF(.bss) + SIZEOF(.noinit); - } > RWTEXT - - .rwtext : ALIGN(4) - { - . = ALIGN (4); - *(.rwtext.literal .rwtext .rwtext.literal.* .rwtext.*) - } > RWTEXT - /* must be last segment using RWTEXT */ .text_heap_start (NOLOAD) : ALIGN(4) {