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
25 lines
501 B
C
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
|