aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/include/mm/pmm.h
blob: bfe21c521af36baca4f5a5223e1ffcfda62907e8 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#ifndef PMM_H
#define PMM_H

#include <stdint.h>
#include <stddef.h>
#include <limine.h>

enum mm_type {
    MEM_USABLE,
    MEM_RESERVED
};

struct MMEntry {
    uint64_t base;
    uint64_t length;
    mm_type type;
};

struct PBitmap {
    uint64_t* addr;
    size_t size;
    MMEntry entry;
};

void pmm_init(limine_memmap_response* memmap, uint64_t hhdm_offset);

#endif