blob: 9a9d39cef293af564e2306ca46dcde8b8c9cad8b [file] [log] [blame]
Tom Rini83d290c2018-05-06 17:58:06 -04001/* SPDX-License-Identifier: GPL-2.0+ */
Simon Glass3742d7a2017-01-16 07:04:01 -07002/*
3 * (C) Copyright 2002
4 * Daniel Engström, Omicron Ceti AB, daniel@omicron.se.
Simon Glass3742d7a2017-01-16 07:04:01 -07005 */
6
7#include <config.h>
8OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64")
9OUTPUT_ARCH(i386:x86-64)
10ENTRY(_start)
11
12SECTIONS
13{
14#ifndef CONFIG_CMDLINE
15 /DISCARD/ : { *(.u_boot_list_2_cmd_*) }
16#endif
17
18 . = CONFIG_SYS_TEXT_BASE; /* Location of bootcode in flash */
19 __text_start = .;
Alexander Graf7e21fbc2018-06-12 07:48:37 +020020
21 .text.start : { *(.text.start); }
22
Simon Glass3742d7a2017-01-16 07:04:01 -070023 .text : { *(.text*); }
24
25 . = ALIGN(4);
26
27 . = ALIGN(4);
28 .u_boot_list : {
29 KEEP(*(SORT(.u_boot_list*)));
30 }
31
32 . = ALIGN(4);
33 .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
34
35 . = ALIGN(4);
36 .data : { *(.data*) }
37
38 . = ALIGN(4);
39 .hash : { *(.hash*) }
40
41 . = ALIGN(4);
42 .got : { *(.got*) }
43
44 . = ALIGN(4);
45 __data_end = .;
46 __init_end = .;
47
48 . = ALIGN(4);
49 .dynsym : { *(.dynsym*) }
50
51 . = ALIGN(4);
52 __rel_dyn_start = .;
53 .rela.dyn : {
54 *(.rela*)
55 }
56 __rel_dyn_end = .;
57 . = ALIGN(4);
58
59 .dynamic : { *(.dynamic) }
60
61 . = ALIGN(4);
62 _end = .;
63
64 .bss __rel_dyn_start (OVERLAY) : {
65 __bss_start = .;
66 *(.bss)
67 *(COM*)
68 . = ALIGN(4);
69 __bss_end = .;
70 }
71
72 /DISCARD/ : { *(.dynsym) }
73 /DISCARD/ : { *(.dynstr*) }
74 /DISCARD/ : { *(.dynamic*) }
75 /DISCARD/ : { *(.plt*) }
76 /DISCARD/ : { *(.interp*) }
77 /DISCARD/ : { *(.gnu*) }
78}