]> git.kernelconcepts.de Git - karo-tx-uboot.git/blob - board/freescale/mx31ads/u-boot.lds
Merge branch 'u-boot-imx/master' into 'u-boot-arm/master'
[karo-tx-uboot.git] / board / freescale / mx31ads / u-boot.lds
1 /*
2  * January 2004 - Changed to support H4 device
3  * Copyright (c) 2004 Texas Instruments
4  *
5  * (C) Copyright 2002
6  * Gary Jennejohn, DENX Software Engineering, <garyj@denx.de>
7  *
8  * See file CREDITS for list of people who contributed to this
9  * project.
10  *
11  * This program is free software; you can redistribute it and/or
12  * modify it under the terms of the GNU General Public License as
13  * published by the Free Software Foundation; either version 2 of
14  * the License, or (at your option) any later version.
15  *
16  * This program is distributed in the hope that it will be useful,
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19  * GNU General Public License for more details.
20  *
21  * You should have received a copy of the GNU General Public License
22  * along with this program; if not, write to the Free Software
23  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
24  * MA 02111-1307 USA
25  */
26
27 OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
28 OUTPUT_ARCH(arm)
29 ENTRY(_start)
30 SECTIONS
31 {
32         . = 0x00000000;
33
34         . = ALIGN(4);
35         .text      :
36         {
37                 *(.__image_copy_start)
38           /* WARNING - the following is hand-optimized to fit within    */
39           /* the sector layout of our flash chips!      XXX FIXME XXX   */
40
41           arch/arm/cpu/arm1136/start.o                  (.text*)
42           board/freescale/mx31ads/libmx31ads.o  (.text*)
43           arch/arm/lib/libarm.o                 (.text*)
44           net/libnet.o                          (.text*)
45           drivers/mtd/libmtd.o                  (.text*)
46
47           . = DEFINED(env_offset) ? env_offset : .;
48           common/env_embedded.o(.text*)
49
50           *(.text*)
51         }
52         . = ALIGN(4);
53         .rodata : { *(.rodata*) }
54
55         . = ALIGN(4);
56         .data : {
57                 *(.data*)
58         }
59
60         . = ALIGN(4);
61
62         . = ALIGN(4);
63         .u_boot_list : {
64                 KEEP(*(SORT(.u_boot_list*)));
65         }
66
67         . = ALIGN(4);
68
69         .image_copy_end :
70         {
71                 *(.__image_copy_end)
72         }
73
74         .rel_dyn_start :
75         {
76                 *(.__rel_dyn_start)
77         }
78
79         .rel.dyn : {
80                 *(.rel*)
81         }
82
83         .rel_dyn_end :
84         {
85                 *(.__rel_dyn_end)
86         }
87
88         _end = .;
89
90 /*
91  * Compiler-generated __bss_start and __bss_end, see arch/arm/lib/bss.c
92  * __bss_base and __bss_limit are for linker only (overlay ordering)
93  */
94
95         .bss_start __rel_dyn_start (OVERLAY) : {
96                 KEEP(*(.__bss_start));
97                 __bss_base = .;
98         }
99
100         .bss __bss_base (OVERLAY) : {
101                 *(.bss*)
102                  . = ALIGN(4);
103                  __bss_limit = .;
104         }
105         .bss_end __bss_limit (OVERLAY) : {
106                 KEEP(*(.__bss_end));
107         }
108
109         /DISCARD/ : { *(.bss*) }
110         /DISCARD/ : { *(.dynsym) }
111         /DISCARD/ : { *(.dynstr*) }
112         /DISCARD/ : { *(.dynsym*) }
113         /DISCARD/ : { *(.dynamic*) }
114         /DISCARD/ : { *(.hash*) }
115         /DISCARD/ : { *(.plt*) }
116         /DISCARD/ : { *(.interp*) }
117         /DISCARD/ : { *(.gnu*) }
118 }