Ver Fonte

esp32[s2,s3]: fix _flash_rodata_align value in the linker scripts

Regression from 4702feeee. The TLS segment is located inside
.flash.rodata, so we need to get the alignment of that section, not
.flash.rodata_noload.
Ivan Grokhotkov há 4 anos atrás
pai
commit
64057d302a

+ 2 - 2
components/esp32/ld/esp32.project.ld.in

@@ -344,14 +344,14 @@ SECTIONS
     . = ALIGN(4);
   } >default_rodata_seg
 
+  _flash_rodata_align = ALIGNOF(.flash.rodata);
+
   .flash.rodata_noload (NOLOAD) :
   {
     . = ALIGN (4);
     mapping[rodata_noload]
   } > default_rodata_seg
 
-  _flash_rodata_align = ALIGNOF(.flash.rodata_noload);
-
   .flash.text :
   {
     _stext = .;

+ 2 - 2
components/esp32s2/ld/esp32s2.project.ld.in

@@ -339,14 +339,14 @@ SECTIONS
     . = ALIGN(4);
   } >default_rodata_seg
 
+  _flash_rodata_align = ALIGNOF(.flash.rodata);
+
   .flash.rodata_noload (NOLOAD) :
   {
     . = ALIGN (4);
     mapping[rodata_noload]
   } > default_rodata_seg
 
-  _flash_rodata_align = ALIGNOF(.flash.rodata_noload);
-
   .flash.text :
   {
     _stext = .;

+ 2 - 2
components/esp32s3/ld/esp32s3.project.ld.in

@@ -401,14 +401,14 @@ SECTIONS
     . = ALIGN(4);
   } > default_rodata_seg
 
+  _flash_rodata_align = ALIGNOF(.flash.rodata);
+
   .flash.rodata_noload (NOLOAD) :
   {
     . = ALIGN (4);
     mapping[rodata_noload]
   } > default_rodata_seg
 
-  _flash_rodata_align = ALIGNOF(.flash.rodata_noload);
-
   /* Marks the end of IRAM code segment */
   .iram0.text_end (NOLOAD) :
   {