Finished Aurix Protocol, AxBoot logs to file now

This commit is contained in:
Jozef Nagy 2025-05-24 21:12:40 +02:00
parent b1d59e02eb
commit d1a5d7d43d
Signed by untrusted user who does not match committer: crz
GPG key ID: 459A4811CEAC7068
37 changed files with 744 additions and 221 deletions

View file

@ -17,9 +17,68 @@
/* SOFTWARE. */
/*********************************************************************************/
#ifndef _PROTO_AURIX_H
#define _PROTO_AURIX_H
#ifndef _AURIX_H
#define _AURIX_H
#include <stdint.h>
#define AURIX_PROTOCOL_REVISION 1
enum aurix_memmap_entry {
AURIX_MMAP_RESERVED = 0,
AURIX_MMAP_ACPI_RECLAIMABLE = 1,
AURIX_MMAP_ACPI_MAPPED_IO = 2,
AURIX_MMAP_ACPI_MAPPED_IO_PORTSPACE = 3,
AURIX_MMAP_ACPI_NVS = 4,
AURIX_MMAP_BOOTLOADER_RECLAIMABLE = 6,
AURIX_MMAP_USABLE = 7
};
enum aurix_framebuffer_format {
AURIX_FB_RGBA = 0,
AURIX_FB_BGRA = 1
};
struct aurix_memmap {
uintptr_t base;
uint32_t size;
uint8_t type;
};
struct aurix_framebuffer {
uintptr_t addr;
uint32_t width;
uint32_t height;
uint8_t bpp; // bits!
uint32_t pitch;
int format;
};
struct aurix_parameters {
// PROTOCOL INFO
uint8_t revision;
// MEMORY
struct aurix_memmap *mmap;
uint32_t mmap_entries;
uintptr_t kernel_addr; // physical address
// RSDP and SMBIOS
uintptr_t rsdp_addr;
uintptr_t smbios_addr;
// FRAMEBUFFER
struct aurix_framebuffer *framebuffer;
};
#ifdef _AXBOOT
#include <mm/vmm.h>
void aurix_load(char *kernel);
void aurix_arch_handoff(void *kernel_entry, pagetable *pm, void *stack, uint32_t stack_size, struct aurix_parameters *parameters);
#endif
#endif /* _PROTO_AURIX_H */