mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-30 14:46:47 +07:00
bafdb64577
Add support to build the PS3 flash rom image and remove some unneeded lmb calls. The PS3's lv1 loader supports loading gzipped binary images from flash rom to addr zero. The loader enters the image at addr 0x100. In this implementation a bootwrapper overlay is use to arrange for the kernel to be loaded to addr zero and to have a suitable bootwrapper entry at 0x100. To construct the rom image, 0x100 bytes from offset 0x100 in the kernel is copied to the bootwrapper symbol __system_reset_kernel. The 0x100 bytes at the bootwrapper symbol __system_reset_overlay is then copied to offset 0x100. At runtime the bootwrapper program copies the 0x100 bytes at __system_reset_kernel to addr 0x100. zImage.ps3 is a wrapped image that contains a flat device tree, an lv1 compatible entry point, and an optional initrd. otheros.bld is the gzip compresed rom image built from zImage.ps3. otheros.bld is suitable for programming into the PS3 boot flash memory. Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
51 lines
743 B
ArmAsm
51 lines
743 B
ArmAsm
OUTPUT_ARCH(powerpc:common)
|
|
ENTRY(_zimage_start)
|
|
EXTERN(_zimage_start)
|
|
SECTIONS
|
|
{
|
|
_vmlinux_start = .;
|
|
.kernel:vmlinux.bin : { *(.kernel:vmlinux.bin) }
|
|
_vmlinux_end = .;
|
|
|
|
. = ALIGN(4096);
|
|
_dtb_start = .;
|
|
.kernel:dtb : { *(.kernel:dtb) }
|
|
_dtb_end = .;
|
|
|
|
. = ALIGN(4096);
|
|
_initrd_start = .;
|
|
.kernel:initrd : { *(.kernel:initrd) }
|
|
_initrd_end = .;
|
|
|
|
_start = .;
|
|
.text :
|
|
{
|
|
*(.text)
|
|
*(.fixup)
|
|
}
|
|
_etext = .;
|
|
. = ALIGN(4096);
|
|
.data :
|
|
{
|
|
*(.rodata*)
|
|
*(.data*)
|
|
*(.sdata*)
|
|
__got2_start = .;
|
|
*(.got2)
|
|
__got2_end = .;
|
|
}
|
|
|
|
. = ALIGN(4096);
|
|
_edata = .;
|
|
|
|
. = ALIGN(4096);
|
|
__bss_start = .;
|
|
.bss :
|
|
{
|
|
*(.sbss)
|
|
*(.bss)
|
|
}
|
|
. = ALIGN(4096);
|
|
_end = . ;
|
|
}
|