Untitled_Kernel/include/kmultiboot.h
lordtet 7b4e4afd43 Defined a couple of functions, added documentation templates
Didn't feel the need to make a new branch for this one, but i added some
doxygen documentation templates to all of the headers. It's a bit
overdue.
2025-07-17 07:36:45 -04:00

47 lines
1.1 KiB
C

/**
* @file kmultiboot.h
* @brief Kernel Multiboot
* @details Data needed for multiboot compatibility.
*/
#ifndef KMULTIBOOT_H
#define KMULTIBOOT_H
#include <stdint.h>
/**
* @brief
*/
typedef struct multiboot_mmap_entry {
uint32_t entry_size; /**< @brief size of this struct entry */
uint64_t addr; /**< @brief physical location of memory */
uint64_t mem_size; /**< @brief size of the memory block */
uint32_t type; /**< @brief */
} __attribute__((packed)) mb_mmap_entry_t;
/**
* @brief
*/
typedef struct mb_info_s {
uint32_t flags; /**< @brief */
uint32_t mem_lower; /**< @brief */
uint32_t mem_upper; /**< @brief */
uint32_t boot_device; /**< @brief */
uint32_t cmdline; /**< @brief */
uint32_t mods_count; /**< @brief */
uint32_t mods_addr; /**< @brief */
uint32_t syms[4]; /**< @brief */
uint32_t mmap_length; /**< @brief */
uint32_t mmap_addr; /**< @brief */
} mb_info_t;
/**
* @brief
*/
extern uint8_t _kernel_start;
/**
* @brief
*/
extern uint8_t _kernel_end;
#endif