20 for (
uint64_t i = 0; i < length; i++)
35 panic(
NULL,
"failed to initialize ACPI sysfs group");
50 if (desc->Type == EfiACPIReclaimMemory)
53 LOG_INFO(
"reclaim memory [0x%016lx-0x%016lx]\n", desc->PhysicalStart,
static bool mountInitialzed
#define BOOT_MEMORY_MAP_GET_DESCRIPTOR(map, index)
dentry_t * acpi_get_sysfs_root(void)
Retrieve the sysfs root directory for ACPI.
bool acpi_is_checksum_valid(void *table, uint64_t length)
Check if the sum of all bytes in a table is 0.
void acpi_reclaim_memory(const boot_memory_map_t *map)
Reclaim ACPI memory regions.
NORETURN void panic(const interrupt_frame_t *frame, const char *format,...)
Panic the kernel, printing a message and halting.
#define LOG_INFO(format,...)
#define PML_LOWER_TO_HIGHER(addr)
Converts an address from the lower half to the higher half.
void pmm_free_region(void *address, uint64_t count)
Frees a contiguous region of physical pages.
#define REF(ptr)
Increment reference count.
#define PAGE_SIZE
Memory page size.
#define NULL
Pointer error value.
__UINTPTR_TYPE__ uintptr_t
Directory entry structure.
dentry_t * root
The root dentry of the mounted filesystem.
mount_t * sysfs_mount_new(const path_t *parent, const char *name, namespace_t *ns, const superblock_ops_t *superblockOps)
Mount a new instance of SysFS.