forked from Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
106 lines
1.7 KiB
106 lines
1.7 KiB
#include <asm-generic/vmlinux.lds.h> |
|
#include <asm/page.h> |
|
#include "sizes.h" |
|
|
|
#ifndef CONFIG_64BIT |
|
OUTPUT_FORMAT("elf32-hppa-linux") |
|
OUTPUT_ARCH(hppa) |
|
#else |
|
OUTPUT_FORMAT("elf64-hppa-linux") |
|
OUTPUT_ARCH(hppa:hppa2.0w) |
|
#endif |
|
|
|
ENTRY(startup) |
|
|
|
SECTIONS |
|
{ |
|
/* palo loads at 0x60000 */ |
|
/* loaded kernel will move to 0x10000 */ |
|
. = 0xe0000; /* should not overwrite palo code */ |
|
|
|
.head.text : { |
|
_head = . ; |
|
HEAD_TEXT |
|
_ehead = . ; |
|
} |
|
|
|
/* keep __gp below 0x1000000 */ |
|
#ifdef CONFIG_64BIT |
|
. = ALIGN(16); |
|
/* Linkage tables */ |
|
.opd : { |
|
__start_opd = .; |
|
*(.opd) |
|
__end_opd = .; |
|
} PROVIDE (__gp = .); |
|
.plt : { |
|
*(.plt) |
|
} |
|
.dlt : { |
|
*(.dlt) |
|
} |
|
#endif |
|
_startcode_end = .; |
|
|
|
/* vmlinux.bin.gz is here */ |
|
. = ALIGN(8); |
|
.rodata.compressed : { |
|
*(.rodata.compressed) |
|
} |
|
|
|
/* bootloader code and data starts at least behind area of extracted kernel */ |
|
. = MAX(ABSOLUTE(.), (SZ_end - SZparisc_kernel_start + KERNEL_BINARY_TEXT_START)); |
|
|
|
/* align on next page boundary */ |
|
. = ALIGN(4096); |
|
.text : { |
|
_text = .; /* Text */ |
|
*(.text) |
|
*(.text.*) |
|
_etext = . ; |
|
} |
|
. = ALIGN(8); |
|
.data : { |
|
_data = . ; |
|
*(.data) |
|
*(.data.*) |
|
_edata = . ; |
|
} |
|
. = ALIGN(8); |
|
.rodata : { |
|
_rodata = . ; |
|
*(.rodata) /* read-only data */ |
|
*(.rodata.*) |
|
_erodata = . ; |
|
} |
|
. = ALIGN(8); |
|
.bss : { |
|
_bss = . ; |
|
*(.bss) |
|
*(.bss.*) |
|
*(COMMON) |
|
. = ALIGN(4096); |
|
_ebss = .; |
|
} |
|
|
|
STABS_DEBUG |
|
ELF_DETAILS |
|
.note 0 : { *(.note) } |
|
|
|
/* Sections to be discarded */ |
|
DISCARDS |
|
/DISCARD/ : { |
|
#ifdef CONFIG_64BIT |
|
/* temporary hack until binutils is fixed to not emit these |
|
* for static binaries |
|
*/ |
|
*(.PARISC.unwind) /* no unwind data */ |
|
*(.interp) |
|
*(.dynsym) |
|
*(.dynstr) |
|
*(.dynamic) |
|
*(.hash) |
|
*(.gnu.hash) |
|
#endif |
|
} |
|
}
|
|
|