blob: f2c9f94f74edf6ebf861890476420e4b43027dd3 [file] [log] [blame]
Tom Rini10e47792018-05-06 17:58:06 -04001/* SPDX-License-Identifier: GPL-2.0+ */
Gabor Juhos7f444662013-01-30 04:31:52 +00002/*
3 * (C) Copyright 2003
4 * Wolfgang Denk Engineering, <wd@denx.de>
Gabor Juhos7f444662013-01-30 04:31:52 +00005 */
6
Gabor Juhos7f444662013-01-30 04:31:52 +00007OUTPUT_ARCH(mips)
8ENTRY(_start)
9SECTIONS
10{
11 . = 0x00000000;
12
13 . = ALIGN(4);
14 .text : {
Paul Burton92a06ee2016-09-21 11:11:06 +010015 __text_start = .;
Gabor Juhos7f444662013-01-30 04:31:52 +000016 *(.text*)
Paul Burton92a06ee2016-09-21 11:11:06 +010017 __text_end = .;
Gabor Juhos7f444662013-01-30 04:31:52 +000018 }
19
20 . = ALIGN(4);
21 .rodata : {
22 *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
23 }
24
25 . = ALIGN(4);
26 .data : {
27 *(.data*)
28 }
29
Gabor Juhos7f444662013-01-30 04:31:52 +000030 . = ALIGN(4);
31 .sdata : {
32 *(.sdata*)
33 }
34
35 . = ALIGN(4);
36 .u_boot_list : {
Albert ARIBAUDc24895e2013-02-25 00:59:00 +000037 KEEP(*(SORT(.u_boot_list*)));
Gabor Juhos7f444662013-01-30 04:31:52 +000038 }
39
Gabor Juhos7f444662013-01-30 04:31:52 +000040 . = ALIGN(4);
Daniel Schwierzeck9049d032013-02-12 22:22:12 +010041 __image_copy_end = .;
Paul Burtond0589bb2014-04-07 10:11:19 +010042 __init_end = .;
Daniel Schwierzeck9049d032013-02-12 22:22:12 +010043
Paul Burtond3a278d2017-06-19 11:53:47 -070044 /*
45 * .rel must come last so that the mips-relocs tool can shrink
46 * the section size & the PT_LOAD program header filesz.
47 */
48 .rel : {
49 __rel_start = .;
50 BYTE(0x0)
51 . += (32 * 1024) - 1;
Daniel Schwierzeck4e6cdff2014-10-29 17:30:36 +010052 }
53
Daniel Schwierzeck1263ea82013-10-11 17:46:59 +020054 _end = .;
Gabor Juhos44ea3c32013-02-12 22:22:13 +010055
Paul Burtond3a278d2017-06-19 11:53:47 -070056 .bss __rel_start (OVERLAY) : {
Daniel Schwierzeck56b5ec72013-02-12 22:22:12 +010057 __bss_start = .;
58 *(.sbss.*)
59 *(.bss.*)
60 *(COMMON)
Gabor Juhos7f444662013-01-30 04:31:52 +000061 . = ALIGN(4);
Daniel Schwierzeck56b5ec72013-02-12 22:22:12 +010062 __bss_end = .;
Gabor Juhos7f444662013-01-30 04:31:52 +000063 }
Gabor Juhos44ea3c32013-02-12 22:22:13 +010064
Daniel Schwierzeck1263ea82013-10-11 17:46:59 +020065 .dynsym _end : {
66 *(.dynsym)
67 }
68
69 .dynbss : {
Gabor Juhos44ea3c32013-02-12 22:22:13 +010070 *(.dynbss)
Daniel Schwierzeck1263ea82013-10-11 17:46:59 +020071 }
72
73 .dynstr : {
Gabor Juhos44ea3c32013-02-12 22:22:13 +010074 *(.dynstr)
Daniel Schwierzeck1263ea82013-10-11 17:46:59 +020075 }
76
77 .dynamic : {
Gabor Juhos44ea3c32013-02-12 22:22:13 +010078 *(.dynamic)
Daniel Schwierzeck1263ea82013-10-11 17:46:59 +020079 }
80
81 .plt : {
82 *(.plt)
83 }
84
85 .interp : {
Gabor Juhos44ea3c32013-02-12 22:22:13 +010086 *(.interp)
Daniel Schwierzeck1263ea82013-10-11 17:46:59 +020087 }
88
89 .gnu : {
90 *(.gnu*)
91 }
92
93 .MIPS.stubs : {
94 *(.MIPS.stubs)
95 }
96
97 .hash : {
Gabor Juhos44ea3c32013-02-12 22:22:13 +010098 *(.hash)
Gabor Juhos44ea3c32013-02-12 22:22:13 +010099 }
Gabor Juhos7f444662013-01-30 04:31:52 +0000100}