mirror of
https://github.com/subhobhai943/SUB-OS.git
synced 2026-10-25 16:52:29 +00:00
- Support ARMv8i / ARM32 (AArch32) baremetal target with arm-linux-gnueabihf toolchain - Implement ARMv8i boot entry point, banked exception mode stacks (IRQ, ABT, UND, SVC) - Implement 8 exception vectors, GICv2 distributor/CPU interface, CP15 Generic Timer (100 Hz), flat Section MMU - Support PL011 UART for early console & interactive LazyBox TTY input - Update Makefile with make armv8i_defconfig and automated cross-compilation - Update scripts/kconfig/menuconfig.py with dedicated armv8i options
52 lines
904 B
Plaintext
52 lines
904 B
Plaintext
OUTPUT_FORMAT("elf32-littlearm")
|
|
OUTPUT_ARCH(arm)
|
|
ENTRY(_start)
|
|
|
|
SECTIONS
|
|
{
|
|
. = 0x40080000;
|
|
|
|
__kernel_start = .;
|
|
|
|
.text.boot : {
|
|
KEEP(*(.text.boot))
|
|
}
|
|
|
|
.vectors : ALIGN(2048) {
|
|
KEEP(*(.vectors))
|
|
}
|
|
|
|
.text : ALIGN(4096) {
|
|
*(.text .text.*)
|
|
}
|
|
|
|
.rodata : ALIGN(4096) {
|
|
*(.rodata .rodata.*)
|
|
}
|
|
|
|
.data : ALIGN(4096) {
|
|
*(.data .data.*)
|
|
}
|
|
|
|
.bss : ALIGN(4096) {
|
|
__bss_start = .;
|
|
*(.bss .bss.*)
|
|
*(COMMON)
|
|
. = ALIGN(4096);
|
|
__bss_end = .;
|
|
}
|
|
|
|
.stack : ALIGN(4096) {
|
|
. += 0x4000; /* 16 KB IRQ Stack */
|
|
irq_stack_top = .;
|
|
. += 0x2000; /* 8 KB ABT Stack */
|
|
abt_stack_top = .;
|
|
. += 0x2000; /* 8 KB UND Stack */
|
|
und_stack_top = .;
|
|
. += 0x10000; /* 64 KB SVC Kernel Stack */
|
|
stack_top = .;
|
|
}
|
|
|
|
__kernel_end = .;
|
|
}
|