diff options
| author | Nathan Lee <me@nwlee.tech> | 2026-06-13 21:24:33 -0500 |
|---|---|---|
| committer | Nathan Lee <me@nwlee.tech> | 2026-06-13 21:24:33 -0500 |
| commit | 2fb81f37d20fd442d1954a7356e3ab7f88314a9c (patch) | |
| tree | 72a63c6c848d1ac748804000a2ed1debf1fc789b /kernel/kernel.c | |
| parent | 4d843a5e03c91867614c94829c5255bc067a90c6 (diff) | |
create support for kernel modules (but don't implement them yet)
Diffstat (limited to 'kernel/kernel.c')
| -rw-r--r-- | kernel/kernel.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/kernel/kernel.c b/kernel/kernel.c new file mode 100644 index 0000000..753f4a5 --- /dev/null +++ b/kernel/kernel.c @@ -0,0 +1,20 @@ +#define UART_BASE 0x10000000 // Example UART address + +static inline void putchar(char c) { + volatile char *uart = (volatile char *)UART_BASE; + *uart = c; +} + +static void print_string(const char *str) { + while (*str) { + putchar(*str++); + } +} + +void kernel_main(void) { + print_string("Hello from RISC-V kernel!\n"); + + while (1) { + // Wait + } +} |
