1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 23:07:35 +00:00

Kernel: Move aarch64 Prekernel into Kernel

As there is no need for a Prekernel on aarch64, the Prekernel code was
moved into Kernel itself. The functionality remains the same.

SERENITY_KERNEL_AND_INITRD in run.sh specifies a kernel and an inital
ramdisk to be used by the emulator. This is needed because aarch64
does not need a Prekernel and the other ones do.
This commit is contained in:
Jakub V. Flasar 2022-03-08 18:21:40 +01:00 committed by Brian Gianforcaro
parent f94293f121
commit 6d2c298b66
37 changed files with 126 additions and 133 deletions

View file

@ -0,0 +1,47 @@
ENTRY(start)
PHDRS
{
boot_text PT_LOAD ;
text PT_LOAD ;
data PT_LOAD ;
bss PT_LOAD ;
}
SECTIONS
{
. = 0x00100000;
start_of_prekernel_image = .;
.boot_text ALIGN(4K) : AT (ADDR(.boot_text))
{
KEEP(*(.multiboot))
} :boot_text
.text ALIGN(4K) : AT (ADDR(.text))
{
start_of_prekernel_text = .;
*(.text*)
} :text
.rodata ALIGN(4K) : AT (ADDR(.rodata))
{
*(.rodata*)
} :data
.data ALIGN(4K) : AT (ADDR(.data))
{
*(.data*)
} :data
.bss ALIGN(4K) (NOLOAD) : AT (ADDR(.bss))
{
*(COMMON)
*(.bss)
*(.stack)
*(.page_tables)
} :bss
end_of_prekernel_image = .;
}