]>
Commit | Line | Data |
---|---|---|
c620c01e GR |
1 | /* |
2 | * (C) Copyright 2002 | |
fa82f871 | 3 | * Daniel Engström, Omicron Ceti AB, daniel@omicron.se. |
c620c01e | 4 | * |
1a459660 | 5 | * SPDX-License-Identifier: GPL-2.0+ |
c620c01e GR |
6 | */ |
7 | ||
e413554f | 8 | #include <config.h> |
c620c01e GR |
9 | OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") |
10 | OUTPUT_ARCH(i386) | |
11 | ENTRY(_start) | |
12 | ||
13 | SECTIONS | |
14 | { | |
c8d76eaf | 15 | . = CONFIG_SYS_TEXT_BASE; /* Location of bootcode in flash */ |
067f9b10 | 16 | __text_start = .; |
22191426 | 17 | .text : { *(.text*); } |
c620c01e GR |
18 | |
19 | . = ALIGN(4); | |
1c409bc7 | 20 | |
55675142 MV |
21 | . = ALIGN(4); |
22 | .u_boot_list : { | |
ef123c52 | 23 | KEEP(*(SORT(.u_boot_list*))); |
55675142 MV |
24 | } |
25 | ||
1c409bc7 | 26 | . = ALIGN(4); |
22191426 | 27 | .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) } |
1c409bc7 | 28 | |
1c409bc7 | 29 | . = ALIGN(4); |
22191426 | 30 | .data : { *(.data*) } |
c620c01e | 31 | |
1c409bc7 | 32 | . = ALIGN(4); |
22191426 | 33 | .hash : { *(.hash*) } |
c620c01e GR |
34 | |
35 | . = ALIGN(4); | |
22191426 | 36 | .got : { *(.got*) } |
c620c01e GR |
37 | |
38 | . = ALIGN(4); | |
22191426 | 39 | __data_end = .; |
86cfb6bd | 40 | __init_end = .; |
1c409bc7 | 41 | |
1c409bc7 | 42 | . = ALIGN(4); |
f82d15ea | 43 | .dynsym : { *(.dynsym*) } |
1c409bc7 | 44 | |
1c409bc7 | 45 | . = ALIGN(4); |
067f9b10 | 46 | __rel_dyn_start = .; |
091c4943 SG |
47 | .rel.dyn : { |
48 | *(.rel*) | |
49 | } | |
067f9b10 | 50 | __rel_dyn_end = .; |
4b491b8d SG |
51 | . = ALIGN(4); |
52 | _end = .; | |
c620c01e | 53 | |
f82d15ea SG |
54 | .bss __rel_dyn_start (OVERLAY) : { |
55 | __bss_start = .; | |
56 | *(.bss) | |
57 | *(COM*) | |
58 | . = ALIGN(4); | |
59 | __bss_end = .; | |
60 | } | |
61 | ||
22191426 GR |
62 | /DISCARD/ : { *(.dynstr*) } |
63 | /DISCARD/ : { *(.dynamic*) } | |
64 | /DISCARD/ : { *(.plt*) } | |
65 | /DISCARD/ : { *(.interp*) } | |
66 | /DISCARD/ : { *(.gnu*) } | |
c620c01e | 67 | |
588a13f7 | 68 | #ifdef CONFIG_X86_RESET_VECTOR |
3a25e944 GR |
69 | /* |
70 | * The following expressions place the 16-bit Real-Mode code and | |
71 | * Reset Vector at the end of the Flash ROM | |
c620c01e | 72 | */ |
a6a95784 SG |
73 | . = START_16 - RESET_SEG_START; |
74 | .start16 : AT (START_16) { | |
75 | KEEP(*(.start16)); | |
76 | } | |
c620c01e | 77 | |
a6a95784 SG |
78 | . = RESET_VEC_LOC - RESET_SEG_START; |
79 | .resetvec : AT (RESET_VEC_LOC) { | |
80 | KEEP(*(.resetvec)); | |
81 | } | |
b16f521a | 82 | #endif |
a6a95784 | 83 | |
c620c01e | 84 | } |