Voxia OS v0.0.1
Hobby Project Operating System Targeting x86-64
Loading...
Searching...
No Matches
stivale2.h File Reference
#include <type.h>

Go to the source code of this file.

Data Structures

struct  stivale2_anchor
 
struct  stivale2_tag
 
struct  stivale2_header
 
struct  stivale2_header_tag_any_video
 
struct  stivale2_header_tag_framebuffer
 
struct  stivale2_header_tag_slide_hhdm
 
struct  stivale2_header_tag_terminal
 
struct  stivale2_header_tag_smp
 
struct  stivale2_struct
 
struct  stivale2_pmr
 
struct  stivale2_struct_tag_pmrs
 
struct  stivale2_struct_tag_kernel_base_address
 
struct  stivale2_struct_tag_cmdline
 
struct  stivale2_mmap_entry
 
struct  stivale2_struct_tag_memmap
 
struct  stivale2_struct_tag_framebuffer
 
struct  stivale2_struct_tag_edid
 
struct  stivale2_struct_tag_textmode
 
struct  stivale2_struct_tag_terminal
 
struct  stivale2_module
 
struct  stivale2_struct_tag_modules
 
struct  stivale2_struct_tag_rsdp
 
struct  stivale2_struct_tag_epoch
 
struct  stivale2_struct_tag_firmware
 
struct  stivale2_struct_tag_efi_system_table
 
struct  stivale2_struct_tag_kernel_file
 
struct  stivale2_struct_tag_kernel_file_v2
 
struct  stivale2_guid
 
struct  stivale2_struct_tag_boot_volume
 
struct  stivale2_struct_tag_kernel_slide
 
struct  stivale2_struct_tag_smbios
 
struct  stivale2_smp_info
 
struct  stivale2_struct_tag_smp
 
struct  stivale2_struct_tag_pxe_server_info
 
struct  stivale2_struct_tag_mmio32_uart
 
struct  stivale2_struct_tag_dtb
 
struct  stivale2_struct_tag_hhdm
 

Macros

#define _stivale2_split64(NAME)
 
#define STIVALE2_HEADER_TAG_ANY_VIDEO_ID   0xc75c9fa92a44c4db
 
#define STIVALE2_HEADER_TAG_FRAMEBUFFER_ID   0x3ecc1bc43d0f7971
 
#define STIVALE2_HEADER_TAG_FB_MTRR_ID   0x4c7bb07731282e00
 
#define STIVALE2_HEADER_TAG_SLIDE_HHDM_ID   0xdc29269c2af53d1d
 
#define STIVALE2_HEADER_TAG_TERMINAL_ID   0xa85d499b1823be72
 
#define STIVALE2_TERM_CB_DEC   10
 
#define STIVALE2_TERM_CB_BELL   20
 
#define STIVALE2_TERM_CB_PRIVATE_ID   30
 
#define STIVALE2_TERM_CB_STATUS_REPORT   40
 
#define STIVALE2_TERM_CB_POS_REPORT   50
 
#define STIVALE2_TERM_CB_KBD_LEDS   60
 
#define STIVALE2_TERM_CB_MODE   70
 
#define STIVALE2_TERM_CB_LINUX   80
 
#define STIVALE2_TERM_CTX_SIZE   ((uint64_t) (-1))
 
#define STIVALE2_TERM_CTX_SAVE   ((uint64_t) (-2))
 
#define STIVALE2_TERM_CTX_RESTORE   ((uint64_t) (-3))
 
#define STIVALE2_TERM_FULL_REFRESH   ((uint64_t) (-4))
 
#define STIVALE2_HEADER_TAG_SMP_ID   0x1ab015085f3273df
 
#define STIVALE2_HEADER_TAG_5LV_PAGING_ID   0x932f477032007e8f
 
#define STIVALE2_HEADER_TAG_UNMAP_NULL_ID   0x92919432b16fe7e7
 
#define STIVALE2_BOOTLOADER_BRAND_SIZE   64
 
#define STIVALE2_BOOTLOADER_VERSION_SIZE   64
 
#define STIVALE2_STRUCT_TAG_PMRS_ID   0x5df266a64047b6bd
 
#define STIVALE2_PMR_EXECUTABLE   ((uint64_t) 1 << 0)
 
#define STIVALE2_PMR_WRITABLE   ((uint64_t) 1 << 1)
 
#define STIVALE2_PMR_READABLE   ((uint64_t) 1 << 2)
 
#define STIVALE2_STRUCT_TAG_KERNEL_BASE_ADDRESS_ID   0x060d78874a2a8af0
 
#define STIVALE2_STRUCT_TAG_CMDLINE_ID   0xe5e76a1b4597a781
 
#define STIVALE2_STRUCT_TAG_MEMMAP_ID   0x2187f79e8612de07
 
#define STIVALE2_MMAP_USABLE   1
 
#define STIVALE2_MMAP_RESERVED   2
 
#define STIVALE2_MMAP_ACPI_RECLAIMABLE   3
 
#define STIVALE2_MMAP_ACPI_NVS   4
 
#define STIVALE2_MMAP_BAD_MEMORY   5
 
#define STIVALE2_MMAP_BOOTLOADER_RECLAIMABLE   0x1000
 
#define STIVALE2_MMAP_KERNEL_AND_MODULES   0x1001
 
#define STIVALE2_MMAP_FRAMEBUFFER   0x1002
 
#define STIVALE2_STRUCT_TAG_FRAMEBUFFER_ID   0x506461d2950408fa
 
#define STIVALE2_FBUF_MMODEL_RGB   1
 
#define STIVALE2_STRUCT_TAG_EDID_ID   0x968609d7af96b845
 
#define STIVALE2_STRUCT_TAG_TEXTMODE_ID   0x38d74c23e0dca893
 
#define STIVALE2_STRUCT_TAG_FB_MTRR_ID   0x6bc1a78ebe871172
 
#define STIVALE2_STRUCT_TAG_TERMINAL_ID   0xc2b3f4c3233b0974
 
#define STIVALE2_STRUCT_TAG_MODULES_ID   0x4b6fe466aade04ce
 
#define STIVALE2_MODULE_STRING_SIZE   128
 
#define STIVALE2_STRUCT_TAG_RSDP_ID   0x9e1786930a375e78
 
#define STIVALE2_STRUCT_TAG_EPOCH_ID   0x566a7bed888e1407
 
#define STIVALE2_STRUCT_TAG_FIRMWARE_ID   0x359d837855e3858c
 
#define STIVALE2_FIRMWARE_BIOS   (1 << 0)
 
#define STIVALE2_STRUCT_TAG_EFI_SYSTEM_TABLE_ID   0x4bc5ec15845b558e
 
#define STIVALE2_STRUCT_TAG_KERNEL_FILE_ID   0xe599d90c2975584a
 
#define STIVALE2_STRUCT_TAG_KERNEL_FILE_V2_ID   0x37c13018a02c6ea2
 
#define STIVALE2_STRUCT_TAG_BOOT_VOLUME_ID   0x9b4358364c19ee62
 
#define STIVALE2_STRUCT_TAG_KERNEL_SLIDE_ID   0xee80847d01506c57
 
#define STIVALE2_STRUCT_TAG_SMBIOS_ID   0x274bd246c62bf7d1
 
#define STIVALE2_STRUCT_TAG_SMP_ID   0x34d1d96339647025
 
#define STIVALE2_STRUCT_TAG_PXE_SERVER_INFO   0x29d1e96239247032
 
#define STIVALE2_STRUCT_TAG_MMIO32_UART   0xb813f9b8dbc78797
 
#define STIVALE2_STRUCT_TAG_DTB   0xabb29bd49a2833fa
 
#define STIVALE2_STRUCT_TAG_HHDM_ID   0xb0ed257db18cb58f
 

Macro Definition Documentation

◆ _stivale2_split64

#define _stivale2_split64 ( NAME)
Value:
unsigned long uint64_t
Definition type.h:25

Definition at line 18 of file stivale2.h.

◆ STIVALE2_BOOTLOADER_BRAND_SIZE

#define STIVALE2_BOOTLOADER_BRAND_SIZE   64

Definition at line 111 of file stivale2.h.

◆ STIVALE2_BOOTLOADER_VERSION_SIZE

#define STIVALE2_BOOTLOADER_VERSION_SIZE   64

Definition at line 114 of file stivale2.h.

◆ STIVALE2_FBUF_MMODEL_RGB

#define STIVALE2_FBUF_MMODEL_RGB   1

Definition at line 179 of file stivale2.h.

◆ STIVALE2_FIRMWARE_BIOS

#define STIVALE2_FIRMWARE_BIOS   (1 << 0)

Definition at line 262 of file stivale2.h.

◆ STIVALE2_HEADER_TAG_5LV_PAGING_ID

#define STIVALE2_HEADER_TAG_5LV_PAGING_ID   0x932f477032007e8f

Definition at line 103 of file stivale2.h.

◆ STIVALE2_HEADER_TAG_ANY_VIDEO_ID

#define STIVALE2_HEADER_TAG_ANY_VIDEO_ID   0xc75c9fa92a44c4db

Definition at line 47 of file stivale2.h.

◆ STIVALE2_HEADER_TAG_FB_MTRR_ID

#define STIVALE2_HEADER_TAG_FB_MTRR_ID   0x4c7bb07731282e00

Definition at line 64 of file stivale2.h.

◆ STIVALE2_HEADER_TAG_FRAMEBUFFER_ID

#define STIVALE2_HEADER_TAG_FRAMEBUFFER_ID   0x3ecc1bc43d0f7971

Definition at line 54 of file stivale2.h.

◆ STIVALE2_HEADER_TAG_SLIDE_HHDM_ID

#define STIVALE2_HEADER_TAG_SLIDE_HHDM_ID   0xdc29269c2af53d1d

Definition at line 66 of file stivale2.h.

◆ STIVALE2_HEADER_TAG_SMP_ID

#define STIVALE2_HEADER_TAG_SMP_ID   0x1ab015085f3273df

Definition at line 96 of file stivale2.h.

◆ STIVALE2_HEADER_TAG_TERMINAL_ID

#define STIVALE2_HEADER_TAG_TERMINAL_ID   0xa85d499b1823be72

Definition at line 74 of file stivale2.h.

◆ STIVALE2_HEADER_TAG_UNMAP_NULL_ID

#define STIVALE2_HEADER_TAG_UNMAP_NULL_ID   0x92919432b16fe7e7

Definition at line 105 of file stivale2.h.

◆ STIVALE2_MMAP_ACPI_NVS

#define STIVALE2_MMAP_ACPI_NVS   4

Definition at line 158 of file stivale2.h.

Referenced by stivale2_mem_entry_type_converter().

◆ STIVALE2_MMAP_ACPI_RECLAIMABLE

#define STIVALE2_MMAP_ACPI_RECLAIMABLE   3

Definition at line 157 of file stivale2.h.

Referenced by stivale2_mem_entry_type_converter().

◆ STIVALE2_MMAP_BAD_MEMORY

#define STIVALE2_MMAP_BAD_MEMORY   5

Definition at line 159 of file stivale2.h.

Referenced by stivale2_mem_entry_type_converter().

◆ STIVALE2_MMAP_BOOTLOADER_RECLAIMABLE

#define STIVALE2_MMAP_BOOTLOADER_RECLAIMABLE   0x1000

Definition at line 160 of file stivale2.h.

Referenced by stivale2_mem_entry_type_converter().

◆ STIVALE2_MMAP_FRAMEBUFFER

#define STIVALE2_MMAP_FRAMEBUFFER   0x1002

Definition at line 162 of file stivale2.h.

Referenced by stivale2_mem_entry_type_converter().

◆ STIVALE2_MMAP_KERNEL_AND_MODULES

#define STIVALE2_MMAP_KERNEL_AND_MODULES   0x1001

Definition at line 161 of file stivale2.h.

Referenced by stivale2_mem_entry_type_converter().

◆ STIVALE2_MMAP_RESERVED

#define STIVALE2_MMAP_RESERVED   2

Definition at line 156 of file stivale2.h.

Referenced by INIT(), and stivale2_mem_entry_type_converter().

◆ STIVALE2_MMAP_USABLE

#define STIVALE2_MMAP_USABLE   1

Definition at line 155 of file stivale2.h.

Referenced by INIT(), and stivale2_mem_entry_type_converter().

◆ STIVALE2_MODULE_STRING_SIZE

#define STIVALE2_MODULE_STRING_SIZE   128

Definition at line 236 of file stivale2.h.

◆ STIVALE2_PMR_EXECUTABLE

#define STIVALE2_PMR_EXECUTABLE   ((uint64_t) 1 << 0)

Definition at line 122 of file stivale2.h.

◆ STIVALE2_PMR_READABLE

#define STIVALE2_PMR_READABLE   ((uint64_t) 1 << 2)

Definition at line 124 of file stivale2.h.

◆ STIVALE2_PMR_WRITABLE

#define STIVALE2_PMR_WRITABLE   ((uint64_t) 1 << 1)

Definition at line 123 of file stivale2.h.

◆ STIVALE2_STRUCT_TAG_BOOT_VOLUME_ID

#define STIVALE2_STRUCT_TAG_BOOT_VOLUME_ID   0x9b4358364c19ee62

Definition at line 291 of file stivale2.h.

Referenced by build_context_from_stivale2().

◆ STIVALE2_STRUCT_TAG_CMDLINE_ID

#define STIVALE2_STRUCT_TAG_CMDLINE_ID   0xe5e76a1b4597a781

Definition at line 146 of file stivale2.h.

◆ STIVALE2_STRUCT_TAG_DTB

#define STIVALE2_STRUCT_TAG_DTB   0xabb29bd49a2833fa

Definition at line 356 of file stivale2.h.

◆ STIVALE2_STRUCT_TAG_EDID_ID

#define STIVALE2_STRUCT_TAG_EDID_ID   0x968609d7af96b845

Definition at line 198 of file stivale2.h.

◆ STIVALE2_STRUCT_TAG_EFI_SYSTEM_TABLE_ID

#define STIVALE2_STRUCT_TAG_EFI_SYSTEM_TABLE_ID   0x4bc5ec15845b558e

Definition at line 269 of file stivale2.h.

◆ STIVALE2_STRUCT_TAG_EPOCH_ID

#define STIVALE2_STRUCT_TAG_EPOCH_ID   0x566a7bed888e1407

Definition at line 253 of file stivale2.h.

◆ STIVALE2_STRUCT_TAG_FB_MTRR_ID

#define STIVALE2_STRUCT_TAG_FB_MTRR_ID   0x6bc1a78ebe871172

Definition at line 217 of file stivale2.h.

◆ STIVALE2_STRUCT_TAG_FIRMWARE_ID

#define STIVALE2_STRUCT_TAG_FIRMWARE_ID   0x359d837855e3858c

Definition at line 260 of file stivale2.h.

◆ STIVALE2_STRUCT_TAG_FRAMEBUFFER_ID

#define STIVALE2_STRUCT_TAG_FRAMEBUFFER_ID   0x506461d2950408fa

Definition at line 177 of file stivale2.h.

Referenced by build_context_from_stivale2().

◆ STIVALE2_STRUCT_TAG_HHDM_ID

#define STIVALE2_STRUCT_TAG_HHDM_ID   0xb0ed257db18cb58f

Definition at line 364 of file stivale2.h.

◆ STIVALE2_STRUCT_TAG_KERNEL_BASE_ADDRESS_ID

#define STIVALE2_STRUCT_TAG_KERNEL_BASE_ADDRESS_ID   0x060d78874a2a8af0

Definition at line 138 of file stivale2.h.

◆ STIVALE2_STRUCT_TAG_KERNEL_FILE_ID

#define STIVALE2_STRUCT_TAG_KERNEL_FILE_ID   0xe599d90c2975584a

Definition at line 276 of file stivale2.h.

◆ STIVALE2_STRUCT_TAG_KERNEL_FILE_V2_ID

#define STIVALE2_STRUCT_TAG_KERNEL_FILE_V2_ID   0x37c13018a02c6ea2

Definition at line 283 of file stivale2.h.

Referenced by build_context_from_stivale2().

◆ STIVALE2_STRUCT_TAG_KERNEL_SLIDE_ID

#define STIVALE2_STRUCT_TAG_KERNEL_SLIDE_ID   0xee80847d01506c57

Definition at line 307 of file stivale2.h.

◆ STIVALE2_STRUCT_TAG_MEMMAP_ID

#define STIVALE2_STRUCT_TAG_MEMMAP_ID   0x2187f79e8612de07

Definition at line 153 of file stivale2.h.

Referenced by build_context_from_stivale2().

◆ STIVALE2_STRUCT_TAG_MMIO32_UART

#define STIVALE2_STRUCT_TAG_MMIO32_UART   0xb813f9b8dbc78797

Definition at line 349 of file stivale2.h.

◆ STIVALE2_STRUCT_TAG_MODULES_ID

#define STIVALE2_STRUCT_TAG_MODULES_ID   0x4b6fe466aade04ce

Definition at line 230 of file stivale2.h.

Referenced by build_context_from_stivale2().

◆ STIVALE2_STRUCT_TAG_PMRS_ID

#define STIVALE2_STRUCT_TAG_PMRS_ID   0x5df266a64047b6bd

Definition at line 120 of file stivale2.h.

◆ STIVALE2_STRUCT_TAG_PXE_SERVER_INFO

#define STIVALE2_STRUCT_TAG_PXE_SERVER_INFO   0x29d1e96239247032

Definition at line 342 of file stivale2.h.

◆ STIVALE2_STRUCT_TAG_RSDP_ID

#define STIVALE2_STRUCT_TAG_RSDP_ID   0x9e1786930a375e78

Definition at line 246 of file stivale2.h.

Referenced by build_context_from_stivale2().

◆ STIVALE2_STRUCT_TAG_SMBIOS_ID

#define STIVALE2_STRUCT_TAG_SMBIOS_ID   0x274bd246c62bf7d1

Definition at line 314 of file stivale2.h.

◆ STIVALE2_STRUCT_TAG_SMP_ID

#define STIVALE2_STRUCT_TAG_SMP_ID   0x34d1d96339647025

Definition at line 323 of file stivale2.h.

◆ STIVALE2_STRUCT_TAG_TERMINAL_ID

#define STIVALE2_STRUCT_TAG_TERMINAL_ID   0xc2b3f4c3233b0974

Definition at line 219 of file stivale2.h.

◆ STIVALE2_STRUCT_TAG_TEXTMODE_ID

#define STIVALE2_STRUCT_TAG_TEXTMODE_ID   0x38d74c23e0dca893

Definition at line 206 of file stivale2.h.

◆ STIVALE2_TERM_CB_BELL

#define STIVALE2_TERM_CB_BELL   20

Definition at line 83 of file stivale2.h.

◆ STIVALE2_TERM_CB_DEC

#define STIVALE2_TERM_CB_DEC   10

Definition at line 82 of file stivale2.h.

◆ STIVALE2_TERM_CB_KBD_LEDS

#define STIVALE2_TERM_CB_KBD_LEDS   60

Definition at line 87 of file stivale2.h.

◆ STIVALE2_TERM_CB_LINUX

#define STIVALE2_TERM_CB_LINUX   80

Definition at line 89 of file stivale2.h.

◆ STIVALE2_TERM_CB_MODE

#define STIVALE2_TERM_CB_MODE   70

Definition at line 88 of file stivale2.h.

◆ STIVALE2_TERM_CB_POS_REPORT

#define STIVALE2_TERM_CB_POS_REPORT   50

Definition at line 86 of file stivale2.h.

◆ STIVALE2_TERM_CB_PRIVATE_ID

#define STIVALE2_TERM_CB_PRIVATE_ID   30

Definition at line 84 of file stivale2.h.

◆ STIVALE2_TERM_CB_STATUS_REPORT

#define STIVALE2_TERM_CB_STATUS_REPORT   40

Definition at line 85 of file stivale2.h.

◆ STIVALE2_TERM_CTX_RESTORE

#define STIVALE2_TERM_CTX_RESTORE   ((uint64_t) (-3))

Definition at line 93 of file stivale2.h.

◆ STIVALE2_TERM_CTX_SAVE

#define STIVALE2_TERM_CTX_SAVE   ((uint64_t) (-2))

Definition at line 92 of file stivale2.h.

◆ STIVALE2_TERM_CTX_SIZE

#define STIVALE2_TERM_CTX_SIZE   ((uint64_t) (-1))

Definition at line 91 of file stivale2.h.

◆ STIVALE2_TERM_FULL_REFRESH

#define STIVALE2_TERM_FULL_REFRESH   ((uint64_t) (-4))

Definition at line 94 of file stivale2.h.