blob: 1a8bf94dee0c88dd64e6833f9e2ad650957e0baa [file] [log] [blame]
Tom Rini83d290c2018-05-06 17:58:06 -04001/* SPDX-License-Identifier: GPL-2.0+ */
Bo Shen41d41a92015-03-27 14:23:34 +08002/*
3 * Copyright (C) 2015 Atmel Corporation
4 * Bo Shen <voice.shen@atmel.com>
Bo Shen41d41a92015-03-27 14:23:34 +08005 */
6
Tom Rini2f41ade2019-01-22 17:09:26 -05007MEMORY { .sram : ORIGIN = IMAGE_TEXT_BASE, \
8 LENGTH = IMAGE_MAX_SIZE }
Bo Shen41d41a92015-03-27 14:23:34 +08009MEMORY { .sdram : ORIGIN = CONFIG_SPL_BSS_START_ADDR, \
10 LENGTH = CONFIG_SPL_BSS_MAX_SIZE }
11
12OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
13OUTPUT_ARCH(arm)
14ENTRY(_start)
15SECTIONS
16{
17 .text :
18 {
19 __start = .;
20 *(.vectors)
21 arch/arm/cpu/arm926ejs/start.o (.text*)
22 *(.text*)
23 } >.sram
24
25 . = ALIGN(4);
26 .rodata : { *(SORT_BY_ALIGNMENT(.rodata*)) } >.sram
27
28 . = ALIGN(4);
29 .data : { *(SORT_BY_ALIGNMENT(.data*)) } >.sram
30
31 . = ALIGN(4);
Andrew Scull99e2fbc2022-05-30 10:00:04 +000032 __u_boot_list : { KEEP(*(SORT(__u_boot_list*))) } > .sram
Tom Rinif8a48262016-03-15 17:56:29 -040033
34 . = ALIGN(4);
Bo Shen41d41a92015-03-27 14:23:34 +080035 __image_copy_end = .;
36
37 .end :
38 {
39 *(.__end)
40 } >.sram
41
Stefan Roeseda8a7712019-04-02 10:57:22 +020042 _image_binary_end = .;
43
Bo Shen41d41a92015-03-27 14:23:34 +080044 .bss :
45 {
46 . = ALIGN(4);
47 __bss_start = .;
48 *(.bss*)
49 . = ALIGN(4);
50 __bss_end = .;
51 } >.sdram
52}
Eugen.Hristev@microchip.combbaeb7a2018-11-28 09:33:43 +000053
Tom Rini2f41ade2019-01-22 17:09:26 -050054#if defined(IMAGE_MAX_SIZE)
Simon Goldschmidt1b1d8c12019-04-25 21:22:39 +020055ASSERT(__image_copy_end - __start <= (IMAGE_MAX_SIZE), \
Eugen.Hristev@microchip.combbaeb7a2018-11-28 09:33:43 +000056 "SPL image too big");
57#endif
58
59#if defined(CONFIG_SPL_BSS_MAX_SIZE)
Simon Goldschmidt1b1d8c12019-04-25 21:22:39 +020060ASSERT(__bss_end - __bss_start <= (CONFIG_SPL_BSS_MAX_SIZE), \
Eugen.Hristev@microchip.combbaeb7a2018-11-28 09:33:43 +000061 "SPL image BSS too big");
62#endif