feat(arch): Add armv8i (32-bit ARM/AArch32) architecture & complete TUI configurator

- 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
This commit is contained in:
subhobhai943 committed 2026-08-18 11:13:23 +05:30
1 parent 70d5925b16
commit 7b646c8cc4
30 files changed
+964 -24

No files matched your search

+23
View File
@@ -0,0 +1,23 @@
#ifndef _ARCH_ARMV8I_ARCH_H
#define _ARCH_ARMV8I_ARCH_H
#include <stdint.h>
#include <stdbool.h>
#define ARMV8I_PAGE_SIZE 4096
// Mode bits in CPSR
#define CPSR_MODE_USR 0x10
#define CPSR_MODE_FIQ 0x11
#define CPSR_MODE_IRQ 0x12
#define CPSR_MODE_SVC 0x13
#define CPSR_MODE_MON 0x16
#define CPSR_MODE_ABT 0x17
#define CPSR_MODE_HYP 0x1A
#define CPSR_MODE_UND 0x1B
#define CPSR_MODE_SYS 0x1F
#define CPSR_IRQ_DISABLE (1 << 7)
#define CPSR_FIQ_DISABLE (1 << 6)
#endif // _ARCH_ARMV8I_ARCH_H