API Reference¶
Core¶
The hypervisor entry point and boot-time initialization logic.
- group Core
Hypervisor entry point and boot-time initialization.
Hypervisor core — entry point, scheduler, and exception handling.
Functions
-
void hmain()¶
Main hypervisor entry point (called from boot.S).
Uses C linkage so the assembly boot code can branch to it by name without C++ name mangling.
Note
Currently a Phase 0 boot stub. Future phases will replace the infinite loop with vCPU scheduling and Stage-2 MMU setup.
Warning
Must never return. The assembly boot stub has no return address — falling off the end of hmain() is undefined behaviour.
-
void hmain()¶
Drivers¶
UART Driver¶
PL011 UART driver for early debug output. Supports QEMU virt and physical Raspberry Pi 5 targets via a compile-time base address.
- group UART Driver
PL011 UART driver for early serial I/O.
PL011 UART driver for early debug output.
Supports both the QEMU virt machine (base 0x09000000) and physical Raspberry Pi 5 hardware (base 0x7E201000), selected at compile time via the
QEMUpreprocessor define.-
class Uart¶
- #include <uart.h>
Static PL011 UART driver for early serial I/O.
Public Static Functions
-
static void print(const char *str)¶
Transmit a null-terminated string.
Transmit a null-terminated string character by character.
Note
Each character is sent via putc(), which spins on the TX FIFO. For large strings this blocks proportionally.
- Parameters:
str – Pointer to the null-terminated string to send.
-
static void print(const char *str)¶
-
class Uart¶