blob: 7b5fca09634aba8a1ca7db9c5ed176690c3f0b23 [file] [log] [blame]
Gabor Juhos7f444662013-01-30 04:31:52 +00001/*
2 * (C) Copyright 2003
3 * Wolfgang Denk Engineering, <wd@denx.de>
4 *
5 * See file CREDITS for list of people who contributed to this
6 * project.
7 *
8 * This program is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU General Public License as
10 * published by the Free Software Foundation; either version 2 of
11 * the License, or (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
21 * MA 02111-1307 USA
22 */
23
24#if defined(CONFIG_64BIT)
25#define PTR_COUNT_SHIFT 3
26#else
27#define PTR_COUNT_SHIFT 2
28#endif
29
30OUTPUT_ARCH(mips)
31ENTRY(_start)
32SECTIONS
33{
34 . = 0x00000000;
35
36 . = ALIGN(4);
37 .text : {
38 *(.text*)
39 }
40
41 . = ALIGN(4);
42 .rodata : {
43 *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
44 }
45
46 . = ALIGN(4);
47 .data : {
48 *(.data*)
49 }
50
51 . = .;
52 _gp = ALIGN(16) + 0x7ff0;
53
54 .got : {
Gabor Juhos7f444662013-01-30 04:31:52 +000055 *(.got)
Gabor Juhos7f444662013-01-30 04:31:52 +000056 }
57
Gabor Juhos7092ce82013-02-12 22:22:12 +010058 num_got_entries = SIZEOF(.got) >> PTR_COUNT_SHIFT;
59
Gabor Juhos7f444662013-01-30 04:31:52 +000060 . = ALIGN(4);
61 .sdata : {
62 *(.sdata*)
63 }
64
65 . = ALIGN(4);
66 .u_boot_list : {
67 #include <u-boot.lst>
68 }
69
70 uboot_end_data = .;
71
Gabor Juhos7f444662013-01-30 04:31:52 +000072 . = ALIGN(4);
Daniel Schwierzeck9049d032013-02-12 22:22:12 +010073 __image_copy_end = .;
74
Gabor Juhos7f444662013-01-30 04:31:52 +000075 .bss : {
Daniel Schwierzeck56b5ec72013-02-12 22:22:12 +010076 __bss_start = .;
77 *(.sbss.*)
78 *(.bss.*)
79 *(COMMON)
Gabor Juhos7f444662013-01-30 04:31:52 +000080 . = ALIGN(4);
Daniel Schwierzeck56b5ec72013-02-12 22:22:12 +010081 __bss_end = .;
Gabor Juhos7f444662013-01-30 04:31:52 +000082 }
Daniel Schwierzeck56b5ec72013-02-12 22:22:12 +010083
Gabor Juhos7f444662013-01-30 04:31:52 +000084 uboot_end = .;
85}