]> git.ipfire.org Git - people/ms/u-boot.git/blame - arch/x86/cpu/u-boot.lds
Merge branch 'master' of git://git.denx.de/u-boot-imx
[people/ms/u-boot.git] / arch / x86 / cpu / u-boot.lds
CommitLineData
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
9OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386")
10OUTPUT_ARCH(i386)
11ENTRY(_start)
12
13SECTIONS
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}