blob: 1e0e90b4afebeee45ec535b902c31d750b106152 [file] [log] [blame]
Peter Pearseba348b52007-11-09 15:24:26 +00001/*
Jean-Christophe PLAGNIOL-VILLARD7580b862009-05-08 20:24:12 +02002 * (C) Copyright 2009
3 * Ilya Yanok, Emcraft Systems Ltd, <yanok@emcraft.com>
Peter Pearseba348b52007-11-09 15:24:26 +00004 *
5 * Copyright (C) 2005-2007 Samsung Electronics
6 * Kyungin Park <kyugnmin.park@samsung.com>
7 *
Peter Pearseba348b52007-11-09 15:24:26 +00008 * Copyright (c) 2004 Texas Instruments
9 *
10 * (C) Copyright 2002
Detlev Zundelf1b3f2b2009-05-13 10:54:10 +020011 * Gary Jennejohn, DENX Software Engineering, <garyj@denx.de>
Peter Pearseba348b52007-11-09 15:24:26 +000012 *
13 * See file CREDITS for list of people who contributed to this
14 * project.
15 *
16 * This program is free software; you can redistribute it and/or
17 * modify it under the terms of the GNU General Public License as
18 * published by the Free Software Foundation; either version 2 of
19 * the License, or (at your option) any later version.
20 *
21 * This program is distributed in the hope that it will be useful,
22 * but WITHOUT ANY WARRANTY; without even the implied warranty of
Albert Aribaudc6665d72010-11-15 21:46:03 +010023 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
24
Peter Pearseba348b52007-11-09 15:24:26 +000025 * GNU General Public License for more details.
26 *
27 * You should have received a copy of the GNU General Public License
28 * along with this program; if not, write to the Free Software
29 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
30 * MA 02111-1307 USA
31 */
32
33OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
34OUTPUT_ARCH(arm)
35ENTRY(_start)
36SECTIONS
37{
38 . = 0x00000000;
39
40 . = ALIGN(4);
Jean-Christophe PLAGNIOL-VILLARD7580b862009-05-08 20:24:12 +020041 .text :
Peter Pearseba348b52007-11-09 15:24:26 +000042 {
Peter Tyserf7c67372010-04-12 22:28:11 -050043 arch/arm/cpu/arm1136/start.o (.text)
Peter Pearseba348b52007-11-09 15:24:26 +000044 *(.text)
45 }
46
47 . = ALIGN(4);
Trent Piepho4438e5e2009-02-18 15:22:05 -080048 .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
Peter Pearseba348b52007-11-09 15:24:26 +000049
50 . = ALIGN(4);
Heiko Schocher504f87c2010-09-17 13:10:40 +020051 .data : {
52 *(.data)
Heiko Schocher504f87c2010-09-17 13:10:40 +020053 }
Peter Pearseba348b52007-11-09 15:24:26 +000054
55 . = ALIGN(4);
Heiko Schocher429ddf62010-10-13 07:57:14 +020056
Peter Pearseba348b52007-11-09 15:24:26 +000057 . = .;
58 __u_boot_cmd_start = .;
59 .u_boot_cmd : { *(.u_boot_cmd) }
60 __u_boot_cmd_end = .;
61
62 . = ALIGN(4);
Albert Aribaudc6665d72010-11-15 21:46:03 +010063
64 .rel.dyn : {
65 __rel_dyn_start = .;
66 *(.rel*)
67 __rel_dyn_end = .;
68 }
69
70 .dynsym : {
71 __dynsym_start = .;
72 *(.dynsym)
73 }
74
75 .bss __rel_dyn_start (OVERLAY) : {
76 __bss_start = .;
77 *(.bss)
78 . = ALIGN(4);
Po-Yu Chuangcedbf4b2011-03-01 22:59:59 +000079 __bss_end__ = .;
Albert Aribaudc6665d72010-11-15 21:46:03 +010080 }
Heiko Schocher429ddf62010-10-13 07:57:14 +020081
82 /DISCARD/ : { *(.dynstr*) }
83 /DISCARD/ : { *(.dynamic*) }
84 /DISCARD/ : { *(.plt*) }
85 /DISCARD/ : { *(.interp*) }
86 /DISCARD/ : { *(.gnu*) }
Peter Pearseba348b52007-11-09 15:24:26 +000087}