100 lines
1.4 KiB
ArmAsm
100 lines
1.4 KiB
ArmAsm
|
/* SPDX-License-Identifier: GPL-2.0 */
|
||
|
#include <asm-generic/vmlinux.lds.h>
|
||
|
|
||
|
#ifdef CONFIG_PPC64_BOOT_WRAPPER
|
||
|
OUTPUT_ARCH(powerpc:common64)
|
||
|
#else
|
||
|
OUTPUT_ARCH(powerpc:common)
|
||
|
#endif
|
||
|
ENTRY(_zimage_start)
|
||
|
EXTERN(_zimage_start)
|
||
|
SECTIONS
|
||
|
{
|
||
|
.text :
|
||
|
{
|
||
|
_start = .;
|
||
|
*(.text)
|
||
|
*(.fixup)
|
||
|
_etext = .;
|
||
|
}
|
||
|
. = ALIGN(4096);
|
||
|
.data :
|
||
|
{
|
||
|
*(.rodata*)
|
||
|
*(.data*)
|
||
|
*(.sdata*)
|
||
|
#ifndef CONFIG_PPC64_BOOT_WRAPPER
|
||
|
*(.got2)
|
||
|
#endif
|
||
|
}
|
||
|
.dynsym : { *(.dynsym) }
|
||
|
.dynstr : { *(.dynstr) }
|
||
|
.dynamic :
|
||
|
{
|
||
|
__dynamic_start = .;
|
||
|
*(.dynamic)
|
||
|
}
|
||
|
.hash : { *(.hash) }
|
||
|
.interp : { *(.interp) }
|
||
|
.rela.dyn :
|
||
|
{
|
||
|
#ifdef CONFIG_PPC64_BOOT_WRAPPER
|
||
|
__rela_dyn_start = .;
|
||
|
#endif
|
||
|
*(.rela*)
|
||
|
}
|
||
|
|
||
|
. = ALIGN(8);
|
||
|
.kernel:dtb :
|
||
|
{
|
||
|
_dtb_start = .;
|
||
|
*(.kernel:dtb)
|
||
|
_dtb_end = .;
|
||
|
}
|
||
|
|
||
|
. = ALIGN(4096);
|
||
|
.kernel:vmlinux.strip :
|
||
|
{
|
||
|
_vmlinux_start = .;
|
||
|
*(.kernel:vmlinux.strip)
|
||
|
_vmlinux_end = .;
|
||
|
}
|
||
|
|
||
|
. = ALIGN(4096);
|
||
|
.kernel:initrd :
|
||
|
{
|
||
|
_initrd_start = .;
|
||
|
*(.kernel:initrd)
|
||
|
_initrd_end = .;
|
||
|
}
|
||
|
|
||
|
. = ALIGN(4096);
|
||
|
.kernel:esm_blob :
|
||
|
{
|
||
|
_esm_blob_start = .;
|
||
|
*(.kernel:esm_blob)
|
||
|
_esm_blob_end = .;
|
||
|
}
|
||
|
|
||
|
#ifdef CONFIG_PPC64_BOOT_WRAPPER
|
||
|
. = ALIGN(256);
|
||
|
.got :
|
||
|
{
|
||
|
__toc_start = .;
|
||
|
*(.got)
|
||
|
*(.toc)
|
||
|
}
|
||
|
#endif
|
||
|
|
||
|
. = ALIGN(4096);
|
||
|
.bss :
|
||
|
{
|
||
|
_edata = .;
|
||
|
__bss_start = .;
|
||
|
*(.sbss)
|
||
|
*(.bss)
|
||
|
*(COMMON)
|
||
|
_end = . ;
|
||
|
}
|
||
|
}
|