blob: 8027b39dbcc0e6097410c9122a3769ecb9c92845 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
|
OUTPUT_FORMAT(elf32-powerpc)
OUTPUT_ARCH(powerpc:common)
/* Initial load address
*/
BASE_ADDR = 0xfff00000;
/* As NVRAM is at 0xfff04000, the .text needs to be after that
*/
TEXT_ADDR = 0xfff08000;
/* Hard reset vector address
*/
HRESET_ADDR = 0xfffffffc;
CSTACK_SIZE = 32768; /* client stack size */
SECTIONS
{
. = BASE_ADDR;
_start = BASE_ADDR + 0x0100;
.text.vectors ALIGN(4096): {
*(.text.vectors)
}
. = TEXT_ADDR;
/* Normal sections */
.text ALIGN(4096): {
*(.text)
*(.text.*)
}
.rodata ALIGN(4096): {
_rodata = .;
*(.rodata)
*(.rodata.*)
*(.note.ELFBoot)
}
.data ALIGN(4096): {
_data = .;
*(.data)
*(.data.*)
_edata = .;
}
.bss ALIGN(4096): {
_bss = .;
*(.sbss)
*(.sbss.*)
*(.bss)
*(.bss.*)
*(COMMON)
_ebss = .;
}
. = HRESET_ADDR;
.romentry : { *(.romentry) }
. = ALIGN(4096);
_end = .;
/* We discard .note sections other than .note.ELFBoot,
* because some versions of GCC generates useless ones. */
/DISCARD/ : { *(.comment*) *(.note.*) }
}
|