blob: 0b11555ec6800c9527740062911259d5c479f16b (
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
|
#ifndef APOS_PMEM_H
#define APOS_PMEM_H
/**
* @file pmem.h
* Physical memory subsystem. Used to allocate and free physical memory pages.
*/
#include <apos/mem.h>
#include <apos/types.h>
#include <arch/pmem.h>
void update_pmap(pm_t offset);
void free_page(enum mm_order order, pm_t paddr);
void mark_used(enum mm_order order, pm_t paddr);
pm_t alloc_page(enum mm_order order, pm_t offset);
pm_t populate_pmap(pm_t ram_base, size_t ram_size, pm_t cont);
pm_t probe_pmap(pm_t ram_base, size_t ram_size);
void init_pmem(void *fdt);
#endif /* APOS_PMEM_H */
|