Rev 130 | Rev 268 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 130 | Rev 216 | ||
---|---|---|---|
1 | /* |
1 | /* |
2 | * MIPS linker script |
2 | * MIPS linker script |
3 | * |
3 | * |
4 | * kernel text |
4 | * kernel text |
5 | * kernel data |
5 | * kernel data |
6 | * |
6 | * |
7 | */ |
7 | */ |
8 | 8 | ||
9 | OUTPUT_FORMAT(binary) |
9 | OUTPUT_FORMAT(binary) |
10 | ENTRY(kernel_image_start) |
10 | ENTRY(kernel_image_start) |
11 | 11 | ||
12 | SECTIONS { |
12 | SECTIONS { |
13 | .image 0x80000000: AT (0x80000000) { |
13 | .image 0x80000000: AT (0x80000000) { |
14 | _gp = 0x00000000; |
14 | _gp = 0x00000000; |
15 | 15 | ||
16 | ktext_start = .; |
16 | ktext_start = .; |
17 | *(.text); |
17 | *(.text); |
18 | ktext_end = .; |
18 | ktext_end = .; |
19 | 19 | ||
20 | kdata_start = .; |
20 | kdata_start = .; |
21 | *(.reginfo); |
21 | *(.reginfo); |
22 | *(.rodata); |
22 | *(.rodata); |
23 | *(.rodata.*); |
23 | *(.rodata.*); |
24 | *(.rdata); |
24 | *(.rdata); |
25 | *(.data); /* initialized data */ |
25 | *(.data); /* initialized data */ |
26 | *(.lit8); |
26 | *(.lit8); |
27 | *(.lit4); |
27 | *(.lit4); |
28 | *(.sdata); |
28 | *(.sdata); |
29 | *(.sbss); |
29 | *(.sbss); |
- | 30 | hardcoded_ktext_size = .; |
|
- | 31 | LONG(ktext_end - ktext_start); |
|
- | 32 | hardcoded_kdata_size = .; |
|
- | 33 | LONG(kdata_end - kdata_start); |
|
- | 34 | hardcoded_load_address = .; |
|
- | 35 | LONG(0x80000000); |
|
30 | *(.bss); /* uninitialized static variables */ |
36 | *(.bss); /* uninitialized static variables */ |
31 | *(.scommon); |
37 | *(.scommon); |
32 | *(COMMON); /* global variables */ |
38 | *(COMMON); /* global variables */ |
33 | kdata_end = .; |
39 | kdata_end = .; |
34 | 40 | ||
35 | } = 0x00000000 |
41 | } = 0x00000000 |
36 | - | ||
37 | . = ABSOLUTE(hardcoded_ktext_size); |
- | |
38 | .patch_1 : { |
- | |
39 | LONG(ktext_end - ktext_start); |
- | |
40 | } |
- | |
41 | - | ||
42 | . = ABSOLUTE(hardcoded_kdata_size); |
- | |
43 | .patch_2 : { |
- | |
44 | LONG(kdata_end - kdata_start); |
- | |
45 | } |
- | |
46 | - | ||
47 | . = ABSOLUTE(hardcoded_load_address); |
- | |
48 | .patch_3 : { |
- | |
49 | LONG(0x80000000); |
- | |
50 | } |
- | |
51 | - | ||
52 | } |
42 | } |
53 | 43 |