mirror of
https://github.com/subhobhai943/SUB-OS.git
synced 2026-10-25 16:52:29 +00:00
feat(arch): Add AArch64 / ARMv8i CPU support, cross-compilation & Linux Kconfig TUI
- Implement AArch64 HAL, vector table (16 aligned vectors), GICv2, Generic Timer, Stage-1 MMU (39-bit VA), PL011 UART - Build unified multi-architecture abstraction layer in include/arch/arch.h - Create interactive Linux-like Kconfig TUI menuconfig in scripts/kconfig/menuconfig.py - Support make menuconfig, defconfig, x86_64_defconfig, aarch64_defconfig - Update master Makefile for cross-compiling x86_64 (x86_64-elf-) and AArch64 (aarch64-linux-gnu-) - Dynamic architecture awareness across printk, uname, neofetch, and LazyBox
This commit is contained in:
1 parent
125a891621
commit
70d5925b16
41 files changed
+1926
-187
No files matched your search
+8
-1
@@ -45,10 +45,17 @@ int vprintk(const char* fmt, va_list args) {
|
||||
// 1. Output to active TTY console
|
||||
tty_write(display_ptr, (size_t)len);
|
||||
|
||||
// 2. Output to COM1 serial port for host debugging
|
||||
// 2. Output to serial console (COM1 on x86, PL011 on AArch64)
|
||||
#if defined(__aarch64__)
|
||||
extern void uart_pl011_putc(char c);
|
||||
for (int i = 0; i < len; i++) {
|
||||
uart_pl011_putc(display_ptr[i]);
|
||||
}
|
||||
#else
|
||||
for (int i = 0; i < len; i++) {
|
||||
serial_write_char(display_ptr[i]);
|
||||
}
|
||||
#endif
|
||||
|
||||
// 3. Store in kernel dmesg ring buffer
|
||||
dmesg_append(display_ptr, (size_t)len);
|
||||
|
||||
Reference in new issue
Block a user