Michael Schwingen | 1ae4428 | 2008-01-16 19:51:14 +0100 | [diff] [blame] | 1 | /* |
2 | * (C) Copyright 2000 | ||||
3 | * Wolfgang Denk, DENX Software Engineering, wd@denx.de. | ||||
4 | * | ||||
Wolfgang Denk | d79de1d | 2013-07-08 09:37:19 +0200 | [diff] [blame] | 5 | * SPDX-License-Identifier: GPL-2.0+ |
Michael Schwingen | 1ae4428 | 2008-01-16 19:51:14 +0100 | [diff] [blame] | 6 | */ |
7 | |||||
8 | OUTPUT_FORMAT ("elf32-bigarm", "elf32-bigarm", "elf32-bigarm") | ||||
9 | OUTPUT_ARCH (arm) | ||||
10 | ENTRY (_start) | ||||
11 | SECTIONS | ||||
12 | { | ||||
13 | . = 0x00000000; | ||||
14 | |||||
15 | . = ALIGN (4); | ||||
16 | .text : { | ||||
Albert ARIBAUD | c53687e | 2013-06-11 14:17:33 +0200 | [diff] [blame] | 17 | *(.__image_copy_start) |
Michael Schwingen | 53adde9 | 2011-05-23 00:00:05 +0200 | [diff] [blame] | 18 | arch/arm/cpu/ixp/start.o(.text*) |
Masahiro Yamada | 30a198b | 2013-11-11 14:36:00 +0900 | [diff] [blame] | 19 | net/built-in.o(.text*) |
20 | board/actux2/built-in.o(.text*) | ||||
21 | arch/arm/cpu/ixp/built-in.o(.text*) | ||||
22 | drivers/input/built-in.o(.text*) | ||||
Michael Schwingen | 1ae4428 | 2008-01-16 19:51:14 +0100 | [diff] [blame] | 23 | |
24 | . = env_offset; | ||||
Michael Schwingen | 53adde9 | 2011-05-23 00:00:05 +0200 | [diff] [blame] | 25 | common/env_embedded.o(.ppcenv) |
26 | *(.text*) | ||||
Michael Schwingen | 1ae4428 | 2008-01-16 19:51:14 +0100 | [diff] [blame] | 27 | } |
28 | |||||
Albert ARIBAUD | 436f632 | 2013-02-25 00:58:59 +0000 | [diff] [blame] | 29 | . = ALIGN(4); |
Michael Schwingen | 1ae4428 | 2008-01-16 19:51:14 +0100 | [diff] [blame] | 30 | .rodata : { |
Trent Piepho | 4438e5e | 2009-02-18 15:22:05 -0800 | [diff] [blame] | 31 | *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) |
Michael Schwingen | 1ae4428 | 2008-01-16 19:51:14 +0100 | [diff] [blame] | 32 | } |
Albert ARIBAUD | 436f632 | 2013-02-25 00:58:59 +0000 | [diff] [blame] | 33 | . = ALIGN(4); |
Michael Schwingen | 1ae4428 | 2008-01-16 19:51:14 +0100 | [diff] [blame] | 34 | .data : { |
Michael Schwingen | 53adde9 | 2011-05-23 00:00:05 +0200 | [diff] [blame] | 35 | *(.data*) |
Michael Schwingen | 1ae4428 | 2008-01-16 19:51:14 +0100 | [diff] [blame] | 36 | } |
Albert ARIBAUD | 436f632 | 2013-02-25 00:58:59 +0000 | [diff] [blame] | 37 | . = ALIGN(4); |
Michael Schwingen | 1ae4428 | 2008-01-16 19:51:14 +0100 | [diff] [blame] | 38 | .got : { |
39 | *(.got) | ||||
40 | } | ||||
Michael Schwingen | 1ae4428 | 2008-01-16 19:51:14 +0100 | [diff] [blame] | 41 | . =.; |
Michael Schwingen | 1ae4428 | 2008-01-16 19:51:14 +0100 | [diff] [blame] | 42 | |
Marek Vasut | 607092a | 2012-10-12 10:27:03 +0000 | [diff] [blame] | 43 | . = ALIGN(4); |
44 | .u_boot_list : { | ||||
Albert ARIBAUD | c24895e | 2013-02-25 00:59:00 +0000 | [diff] [blame] | 45 | KEEP(*(SORT(.u_boot_list*))); |
Marek Vasut | 607092a | 2012-10-12 10:27:03 +0000 | [diff] [blame] | 46 | } |
47 | |||||
Michael Schwingen | 1ae4428 | 2008-01-16 19:51:14 +0100 | [diff] [blame] | 48 | . = ALIGN (4); |
Benoît Thébaudeau | 03bae03 | 2013-04-11 09:35:46 +0000 | [diff] [blame] | 49 | |
Albert ARIBAUD | c53687e | 2013-06-11 14:17:33 +0200 | [diff] [blame] | 50 | .image_copy_end : |
51 | { | ||||
52 | *(.__image_copy_end) | ||||
53 | } | ||||
Benoît Thébaudeau | 03bae03 | 2013-04-11 09:35:46 +0000 | [diff] [blame] | 54 | |
Albert ARIBAUD | af3ff16 | 2013-06-11 14:17:34 +0200 | [diff] [blame] | 55 | .rel_dyn_start : |
56 | { | ||||
57 | *(.__rel_dyn_start) | ||||
58 | } | ||||
59 | |||||
Michael Schwingen | 53adde9 | 2011-05-23 00:00:05 +0200 | [diff] [blame] | 60 | .rel.dyn : { |
Michael Schwingen | 53adde9 | 2011-05-23 00:00:05 +0200 | [diff] [blame] | 61 | *(.rel*) |
Albert ARIBAUD | af3ff16 | 2013-06-11 14:17:34 +0200 | [diff] [blame] | 62 | } |
63 | |||||
64 | .rel_dyn_end : | ||||
65 | { | ||||
66 | *(.__rel_dyn_end) | ||||
Michael Schwingen | 53adde9 | 2011-05-23 00:00:05 +0200 | [diff] [blame] | 67 | } |
68 | |||||
Albert ARIBAUD | 436f632 | 2013-02-25 00:58:59 +0000 | [diff] [blame] | 69 | _end = .; |
70 | |||||
Albert ARIBAUD | ba5662d | 2013-04-11 05:43:21 +0000 | [diff] [blame] | 71 | /* |
72 | * Compiler-generated __bss_start and __bss_end, see arch/arm/lib/bss.c | ||||
73 | * __bss_base and __bss_limit are for linker only (overlay ordering) | ||||
74 | */ | ||||
75 | |||||
Albert ARIBAUD | 436f632 | 2013-02-25 00:58:59 +0000 | [diff] [blame] | 76 | .bss_start __rel_dyn_start (OVERLAY) : { |
77 | KEEP(*(.__bss_start)); | ||||
Albert ARIBAUD | ba5662d | 2013-04-11 05:43:21 +0000 | [diff] [blame] | 78 | __bss_base = .; |
Albert ARIBAUD | 436f632 | 2013-02-25 00:58:59 +0000 | [diff] [blame] | 79 | } |
80 | |||||
Albert ARIBAUD | ba5662d | 2013-04-11 05:43:21 +0000 | [diff] [blame] | 81 | .bss __bss_base (OVERLAY) : { |
Michael Schwingen | 53adde9 | 2011-05-23 00:00:05 +0200 | [diff] [blame] | 82 | *(.bss*) |
83 | . = ALIGN(4); | ||||
Albert ARIBAUD | ba5662d | 2013-04-11 05:43:21 +0000 | [diff] [blame] | 84 | __bss_limit = .; |
Michael Schwingen | 1ae4428 | 2008-01-16 19:51:14 +0100 | [diff] [blame] | 85 | } |
Albert ARIBAUD | ba5662d | 2013-04-11 05:43:21 +0000 | [diff] [blame] | 86 | .bss_end __bss_limit (OVERLAY) : { |
87 | KEEP(*(.__bss_end)); | ||||
Albert ARIBAUD | 436f632 | 2013-02-25 00:58:59 +0000 | [diff] [blame] | 88 | } |
89 | |||||
Albert ARIBAUD | 1691593 | 2013-06-11 14:17:31 +0200 | [diff] [blame] | 90 | /DISCARD/ : { *(.dynsym) } |
Michael Schwingen | 53adde9 | 2011-05-23 00:00:05 +0200 | [diff] [blame] | 91 | /DISCARD/ : { *(.dynstr*) } |
92 | /DISCARD/ : { *(.dynamic*) } | ||||
93 | /DISCARD/ : { *(.plt*) } | ||||
94 | /DISCARD/ : { *(.interp*) } | ||||
95 | /DISCARD/ : { *(.gnu*) } | ||||
Michael Schwingen | 1ae4428 | 2008-01-16 19:51:14 +0100 | [diff] [blame] | 96 | } |