Rev 1162 | Details | Compare with Previous | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 1160 | decky | 1 | /** PPC64 linker script |
| 2 | * |
||
| 3 | * umapped section: |
||
| 4 | * kernel text |
||
| 5 | * kernel data |
||
| 6 | * mapped section: |
||
| 7 | * kernel text |
||
| 8 | * kernel data |
||
| 9 | * |
||
| 10 | */ |
||
| 11 | |||
| 12 | #define __ASM__ |
||
| 13 | #include <arch/boot/boot.h> |
||
| 14 | #include <arch/mm/page.h> |
||
| 15 | |||
| 16 | ENTRY(kernel_image_start) |
||
| 1165 | decky | 17 | OUTPUT_FORMAT("elf64-powerpc") |
| 1162 | decky | 18 | OUTPUT_ARCH(powerpc:common64) |
| 1160 | decky | 19 | |
| 20 | SECTIONS { |
||
| 21 | .unmapped 0: AT (0) { |
||
| 22 | unmapped_ktext_start = .; |
||
| 23 | *(K_UNMAPPED_TEXT_START); |
||
| 24 | unmapped_ktext_end = .; |
||
| 25 | |||
| 26 | unmapped_kdata_start = .; |
||
| 27 | *(K_UNMAPPED_DATA_START); |
||
| 28 | unmapped_kdata_start = .; |
||
| 29 | } |
||
| 30 | |||
| 31 | .mapped PA2KA(BOOT_OFFSET): AT (BOOT_OFFSET) { |
||
| 32 | ktext_start = .; |
||
| 33 | *(K_TEXT_START); |
||
| 34 | *(.text); |
||
| 35 | ktext_end = .; |
||
| 36 | |||
| 37 | kdata_start = .; |
||
| 38 | *(K_DATA_START); |
||
| 39 | *(.rodata); |
||
| 40 | *(.rodata.*); |
||
| 41 | *(.data); /* initialized data */ |
||
| 42 | *(.sdata); |
||
| 43 | *(.sdata2); |
||
| 44 | *(.sbss); |
||
| 45 | hardcoded_ktext_size = .; |
||
| 46 | LONG(ktext_end - ktext_start); |
||
| 47 | hardcoded_kdata_size = .; |
||
| 48 | LONG(kdata_end - kdata_start); |
||
| 49 | hardcoded_load_address = .; |
||
| 50 | LONG(PA2KA(BOOT_OFFSET)); |
||
| 51 | *(.bss); /* uninitialized static variables */ |
||
| 52 | *(COMMON); /* global variables */ |
||
| 53 | |||
| 54 | symbol_table = .; |
||
| 55 | *(symtab.*); /* Symbol table, must be LAST symbol!*/ |
||
| 56 | |||
| 57 | kdata_end = .; |
||
| 58 | } |
||
| 59 | } |