summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arch/arm/cpu/armv8/u-boot-spl.lds15
-rw-r--r--arch/arm/cpu/u-boot-spl.lds12
2 files changed, 14 insertions, 13 deletions
diff --git a/arch/arm/cpu/armv8/u-boot-spl.lds b/arch/arm/cpu/armv8/u-boot-spl.lds
index b732133ce76..39020a1fddd 100644
--- a/arch/arm/cpu/armv8/u-boot-spl.lds
+++ b/arch/arm/cpu/armv8/u-boot-spl.lds
@@ -49,12 +49,6 @@ SECTIONS
} >.sram
#endif
- __u_boot_list : {
- . = ALIGN(8);
- KEEP(*(SORT(__u_boot_list*)));
- . = ALIGN(8);
- } >.sram
-
.binman_sym_table : {
. = ALIGN(8);
__binman_sym_start = .;
@@ -63,6 +57,12 @@ SECTIONS
. = ALIGN(8);
} > .sram
+ __u_boot_list : {
+ . = ALIGN(8);
+ KEEP(*(SORT(__u_boot_list*)));
+ . = ALIGN(8);
+ } >.sram
+
__image_copy_end = .;
_end = .;
_image_binary_end = .;
@@ -75,7 +75,7 @@ SECTIONS
__bss_end = .;
} >.sdram
#else
- .bss (NOLOAD) : {
+ .bss _image_binary_end (OVERLAY) : {
__bss_start = .;
*(.bss*)
. = ALIGN(8);
@@ -99,5 +99,6 @@ SECTIONS
ASSERT(_image_binary_end % 8 == 0, \
"_image_binary_end must be 8-byte aligned for device tree");
+
ASSERT(ADDR(.bss) % 8 == 0, \
".bss must be 8-byte aligned");
diff --git a/arch/arm/cpu/u-boot-spl.lds b/arch/arm/cpu/u-boot-spl.lds
index c578c3ebf82..97083319d39 100644
--- a/arch/arm/cpu/u-boot-spl.lds
+++ b/arch/arm/cpu/u-boot-spl.lds
@@ -32,15 +32,15 @@ SECTIONS
}
. = ALIGN(4);
- __u_boot_list : {
- KEEP(*(SORT(__u_boot_list*)));
- }
-
- . = ALIGN(4);
.binman_sym_table : {
__binman_sym_start = .;
KEEP(*(SORT(.binman_sym*)));
__binman_sym_end = .;
+ }
+
+ . = ALIGN(4);
+ __u_boot_list : {
+ KEEP(*(SORT(__u_boot_list*)));
. = ALIGN(8);
}
@@ -48,7 +48,7 @@ SECTIONS
_image_binary_end = .;
_end = .;
- .bss : {
+ .bss _image_binary_end (OVERLAY) : {
__bss_start = .;
*(.bss*)
. = ALIGN(8);