arm: socfpga: Enable all FPGA config support for Arria 10
[platform/kernel/u-boot.git] / arch / mips / cpu / u-boot.lds
1 /*
2  * (C) Copyright 2003
3  * Wolfgang Denk Engineering, <wd@denx.de>
4  *
5  * SPDX-License-Identifier:     GPL-2.0+
6  */
7
8 #if defined(CONFIG_64BIT)
9 #define PTR_COUNT_SHIFT 3
10 #else
11 #define PTR_COUNT_SHIFT 2
12 #endif
13
14 OUTPUT_ARCH(mips)
15 ENTRY(_start)
16 SECTIONS
17 {
18         . = 0x00000000;
19
20         . = ALIGN(4);
21         .text : {
22                 __text_start = .;
23                 *(.text*)
24                 __text_end = .;
25         }
26
27         . = ALIGN(4);
28         .rodata : {
29                 *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
30         }
31
32         . = ALIGN(4);
33         .data : {
34                 *(.data*)
35         }
36
37         . = .;
38         _gp = ALIGN(16) + 0x7ff0;
39
40         .got : {
41                 *(.got)
42         }
43
44         num_got_entries = SIZEOF(.got) >> PTR_COUNT_SHIFT;
45
46         . = ALIGN(4);
47         .sdata : {
48                 *(.sdata*)
49         }
50
51         . = ALIGN(4);
52         .u_boot_list : {
53                 KEEP(*(SORT(.u_boot_list*)));
54         }
55
56         . = ALIGN(4);
57         __image_copy_end = .;
58         __init_end = .;
59
60         .rel.dyn : {
61                 __rel_dyn_start = .;
62                 *(.rel.dyn)
63                 __rel_dyn_end = .;
64         }
65
66         .padding : {
67                 /*
68                  * Workaround for a binutils feature (or bug?).
69                  *
70                  * The GNU ld from binutils puts the dynamic relocation
71                  * entries into the .rel.dyn section. Sometimes it
72                  * allocates more dynamic relocation entries than it needs
73                  * and the unused slots are set to R_MIPS_NONE entries.
74                  *
75                  * However the size of the .rel.dyn section in the ELF
76                  * section header does not cover the unused entries, so
77                  * objcopy removes those during stripping.
78                  *
79                  * Create a small section here to avoid that.
80                  */
81                 LONG(0xFFFFFFFF)
82         }
83
84         _end = .;
85
86         .bss __rel_dyn_start (OVERLAY) : {
87                 __bss_start = .;
88                 *(.sbss.*)
89                 *(.bss.*)
90                 *(COMMON)
91                 . = ALIGN(4);
92                 __bss_end = .;
93         }
94
95         .dynsym _end : {
96                 *(.dynsym)
97         }
98
99         .dynbss : {
100                 *(.dynbss)
101         }
102
103         .dynstr : {
104                 *(.dynstr)
105         }
106
107         .dynamic : {
108                 *(.dynamic)
109         }
110
111         .plt : {
112                 *(.plt)
113         }
114
115         .interp : {
116                 *(.interp)
117         }
118
119         .gnu : {
120                 *(.gnu*)
121         }
122
123         .MIPS.stubs : {
124                 *(.MIPS.stubs)
125         }
126
127         .hash : {
128                 *(.hash)
129         }
130 }