summaryrefslogtreecommitdiff
path: root/include/drivers/uart.h
diff options
context:
space:
mode:
authorRichard Qin <richard.qin.x@gmail.com>2025-12-10 01:19:32 +0800
committerRichard Qin <richard.qin.x@gmail.com>2025-12-10 01:19:32 +0800
commit497e4a1b2f6f9181518e9887991c0464bd8f6bcf (patch)
treeefd498dd66b8995a4bd0e31ca6af454b4ef342d2 /include/drivers/uart.h
parentc36e1b5e5e069ce1735dcc2a94aa45ba72ea2441 (diff)
downloadlume-497e4a1b2f6f9181518e9887991c0464bd8f6bcf.tar.gz
lume-497e4a1b2f6f9181518e9887991c0464bd8f6bcf.tar.xz
feat: Add initial Supervisor Mode Trap Handler
Implement the initial mechanism for handling traps and exceptions in Supervisor Mode. Set up the stvec Control and Status Register (CSR) to direct all S-Mode Traps (Interrupts and Exceptions) to a unified assembly entry point. Implemented assembly code for saving and restoring the Trap Context (register state). Provides the foundational framework necessary for future Timer Interrupts and System Calls.
Diffstat (limited to 'include/drivers/uart.h')
-rw-r--r--include/drivers/uart.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/drivers/uart.h b/include/drivers/uart.h
index 8bf4560..4d00d94 100644
--- a/include/drivers/uart.h
+++ b/include/drivers/uart.h
@@ -1,7 +1,9 @@
#pragma once
+typedef unsigned long long uint64_t;
namespace Drivers {
void uart_init();
void uart_putc(char c);
void uart_puts(const char* s);
+ void print_hex(uint64_t val);
} \ No newline at end of file