blob: 5dbf94e44e6faf84a1fc42cbe1150d268df1118a [file] [log] [blame]
Marek Vasut411b9ea2011-10-31 14:17:21 +01001/*
2 * Copyright (C) 2011 Marek Vasut <marek.vasut@gmail.com>
3 * on behalf of DENX Software Engineering GmbH
4 *
5 * January 2004 - Changed to support H4 device
6 * Copyright (c) 2004-2008 Texas Instruments
7 *
8 * (C) Copyright 2002
9 * Gary Jennejohn, DENX Software Engineering, <garyj@denx.de>
10 *
Wolfgang Denk1a459662013-07-08 09:37:19 +020011 * SPDX-License-Identifier: GPL-2.0+
Marek Vasut411b9ea2011-10-31 14:17:21 +010012 */
13
14OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
15OUTPUT_ARCH(arm)
16ENTRY(_start)
17SECTIONS
18{
19 . = CONFIG_SPL_TEXT_BASE;
20 .text.0 :
21 {
22 arch/arm/cpu/pxa/start.o (.text*)
Marek Vasut67decc72013-12-26 00:46:49 +010023 arch/arm/lib/built-in.o (.text*)
Masahiro Yamadae2906a52013-11-11 14:36:00 +090024 board/vpac270/built-in.o (.text*)
25 drivers/mtd/onenand/built-in.o (.text*)
Marek Vasut411b9ea2011-10-31 14:17:21 +010026 }
27
28
29 /* Start of the rest of the SPL */
30 . = CONFIG_SPL_TEXT_BASE + 0x800;
31
32 .text.1 :
33 {
34 *(.text*)
35 }
36
37 . = ALIGN(4);
38 .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
39
40 . = ALIGN(4);
41 .data : {
Benoît Thébaudeau1a9a91d2013-04-11 09:36:03 +000042 *(.data*)
Marek Vasut411b9ea2011-10-31 14:17:21 +010043 }
44
Marek Vasut411b9ea2011-10-31 14:17:21 +010045 . = ALIGN(4);
46
Benoît Thébaudeau7086e912013-04-11 09:35:46 +000047 __image_copy_end = .;
48
Marek Vasut411b9ea2011-10-31 14:17:21 +010049 .rel.dyn : {
50 __rel_dyn_start = .;
51 *(.rel*)
52 __rel_dyn_end = .;
53 }
54
Marek Vasut411b9ea2011-10-31 14:17:21 +010055 . = ALIGN(0x800);
56
Albert ARIBAUDd0b5d9d2014-02-22 17:53:42 +010057 .end :
58 {
59 *(.__end)
60 }
61
62 _image_binary_end = .;
Marek Vasut411b9ea2011-10-31 14:17:21 +010063
64 .bss __rel_dyn_start (OVERLAY) : {
65 __bss_start = .;
Benoît Thébaudeau1a9a91d2013-04-11 09:36:03 +000066 *(.bss*)
Marek Vasut411b9ea2011-10-31 14:17:21 +010067 . = ALIGN(4);
Simon Glass3929fb02013-03-14 06:54:53 +000068 __bss_end = .;
Marek Vasut411b9ea2011-10-31 14:17:21 +010069 }
70
Albert ARIBAUDd0b5d9d2014-02-22 17:53:42 +010071 .dynsym _image_binary_end : { *(.dynsym) }
Albert ARIBAUD47ed5dd2013-11-07 14:21:46 +010072 .dynbss : { *(.dynbss) }
73 .dynstr : { *(.dynstr*) }
74 .dynamic : { *(.dynamic*) }
75 .hash : { *(.hash*) }
76 .plt : { *(.plt*) }
77 .interp : { *(.interp*) }
78 .gnu : { *(.gnu*) }
79 .ARM.exidx : { *(.ARM.exidx*) }
Marek Vasut411b9ea2011-10-31 14:17:21 +010080}