Files
SUB-OS/include/arch/armv8i/uart.h
T
subhobhai943 7b646c8cc4 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
2026-08-18 11:13:23 +05:30

25 lines
501 B
C

#ifndef _ARCH_ARMV8I_UART_H
#define _ARCH_ARMV8I_UART_H
#include <stdint.h>
#define PL011_UART0_BASE 0x09000000
#define UARTDR 0x000
#define UARTRSR 0x004
#define UARTFR 0x018
#define UARTCR 0x030
#define UARTIMSC 0x038
#define UARTICR 0x044
#define UARTFR_TXFF (1 << 5)
#define UARTFR_RXFE (1 << 4)
void uart_pl011_init(void);
void uart_pl011_putc(char c);
void uart_pl011_puts(const char* str);
char uart_pl011_getc(void);
int uart_pl011_has_data(void);
#endif // _ARCH_ARMV8I_UART_H