blob: 02d107c4b9b16ae7dc7f287e4de514ce6b8c305f [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*)
Masahiro Yamadae2906a52013-11-11 14:36:00 +090023 board/vpac270/built-in.o (.text*)
24 drivers/mtd/onenand/built-in.o (.text*)
Marek Vasut411b9ea2011-10-31 14:17:21 +010025 }
26
27
28 /* Start of the rest of the SPL */
29 . = CONFIG_SPL_TEXT_BASE + 0x800;
30
31 .text.1 :
32 {
33 *(.text*)
34 }
35
36 . = ALIGN(4);
37 .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
38
39 . = ALIGN(4);
40 .data : {
Benoît Thébaudeau1a9a91d2013-04-11 09:36:03 +000041 *(.data*)
Marek Vasut411b9ea2011-10-31 14:17:21 +010042 }
43
Marek Vasut411b9ea2011-10-31 14:17:21 +010044 . = ALIGN(4);
45
Benoît Thébaudeau7086e912013-04-11 09:35:46 +000046 __image_copy_end = .;
47
Marek Vasut411b9ea2011-10-31 14:17:21 +010048 .rel.dyn : {
49 __rel_dyn_start = .;
50 *(.rel*)
51 __rel_dyn_end = .;
52 }
53
Marek Vasut411b9ea2011-10-31 14:17:21 +010054 . = ALIGN(0x800);
55
56 _end = .;
57
58 .bss __rel_dyn_start (OVERLAY) : {
59 __bss_start = .;
Benoît Thébaudeau1a9a91d2013-04-11 09:36:03 +000060 *(.bss*)
Marek Vasut411b9ea2011-10-31 14:17:21 +010061 . = ALIGN(4);
Simon Glass3929fb02013-03-14 06:54:53 +000062 __bss_end = .;
Marek Vasut411b9ea2011-10-31 14:17:21 +010063 }
64
Albert ARIBAUD47ed5dd2013-11-07 14:21:46 +010065 .dynsym _end : { *(.dynsym) }
66 .dynbss : { *(.dynbss) }
67 .dynstr : { *(.dynstr*) }
68 .dynamic : { *(.dynamic*) }
69 .hash : { *(.hash*) }
70 .plt : { *(.plt*) }
71 .interp : { *(.interp*) }
72 .gnu : { *(.gnu*) }
73 .ARM.exidx : { *(.ARM.exidx*) }
Marek Vasut411b9ea2011-10-31 14:17:21 +010074}