blob: 4e48da56be8985ff7a9d27a13c39defe0e6fe2f2 [file] [log] [blame]
Tom Rini10e47792018-05-06 17:58:06 -04001/* SPDX-License-Identifier: GPL-2.0+ */
Scott Wood8e728cd2015-03-24 13:25:02 -07002/*
3 * (C) Copyright 2013
4 * David Feng <fenghua@phytium.com.cn>
5 *
6 * (C) Copyright 2002
7 * Gary Jennejohn, DENX Software Engineering, <garyj@denx.de>
8 *
9 * (C) Copyright 2010
10 * Texas Instruments, <www.ti.com>
11 * Aneesh V <aneesh@ti.com>
Scott Wood8e728cd2015-03-24 13:25:02 -070012 */
13
14MEMORY { .sram : ORIGIN = CONFIG_SPL_TEXT_BASE,
15 LENGTH = CONFIG_SPL_MAX_SIZE }
16MEMORY { .sdram : ORIGIN = CONFIG_SPL_BSS_START_ADDR,
17 LENGTH = CONFIG_SPL_BSS_MAX_SIZE }
18
19OUTPUT_FORMAT("elf64-littleaarch64", "elf64-littleaarch64", "elf64-littleaarch64")
20OUTPUT_ARCH(aarch64)
21ENTRY(_start)
22SECTIONS
23{
24 .text : {
25 . = ALIGN(8);
26 *(.__image_copy_start)
27 CPUDIR/start.o (.text*)
28 *(.text*)
29 } >.sram
30
31 .rodata : {
32 . = ALIGN(8);
33 *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
34 } >.sram
35
36 .data : {
37 . = ALIGN(8);
38 *(.data*)
39 } >.sram
40
41 .u_boot_list : {
42 . = ALIGN(8);
43 KEEP(*(SORT(.u_boot_list*)));
44 } >.sram
45
46 .image_copy_end : {
47 . = ALIGN(8);
48 *(.__image_copy_end)
49 } >.sram
50
51 .end : {
52 . = ALIGN(8);
53 *(.__end)
54 } >.sram
55
Masahiro Yamada9bcc5712016-03-08 20:34:44 +090056 _image_binary_end = .;
57
Michal Simek11bf53b2017-05-29 10:26:53 +020058 .bss_start (NOLOAD) : {
Scott Wood8e728cd2015-03-24 13:25:02 -070059 . = ALIGN(8);
60 KEEP(*(.__bss_start));
61 } >.sdram
62
Michal Simek11bf53b2017-05-29 10:26:53 +020063 .bss (NOLOAD) : {
Scott Wood8e728cd2015-03-24 13:25:02 -070064 *(.bss*)
65 . = ALIGN(8);
66 } >.sdram
67
Michal Simek11bf53b2017-05-29 10:26:53 +020068 .bss_end (NOLOAD) : {
Scott Wood8e728cd2015-03-24 13:25:02 -070069 KEEP(*(.__bss_end));
70 } >.sdram
71
72 /DISCARD/ : { *(.dynsym) }
73 /DISCARD/ : { *(.dynstr*) }
74 /DISCARD/ : { *(.dynamic*) }
75 /DISCARD/ : { *(.plt*) }
76 /DISCARD/ : { *(.interp*) }
77 /DISCARD/ : { *(.gnu*) }
78}