Files
beaglefw/mm.hh
Matthias Blankertz 76cc09a168 - WIP: OMAP35x SD/MMC controller driver
- WIP: Pagecache
- Added sleep() and usleep() functions
2013-07-19 19:51:40 +02:00

31 lines
696 B
C++

#ifndef _MM_HH_
#define _MM_HH_
#include <cstdint>
#include "exceptions.hh"
namespace mm {
// Initialize memory management
// Physical memory management must be initialized before calling mm::init
void init();
// Allocate 'pages' pages of virtual address space in the I/O region
uintptr_t virtalloc_io(unsigned pages);
// Allocate in pagecache region
uintptr_t virtalloc_pc(unsigned pages);
void virtfree_pc(uintptr_t base);
// Grow the kernel heap by 'pages' pages
// Allocate and map the desired amount of memory
// Return the new heap end
uintptr_t grow_heap(unsigned pages);
uintptr_t get_heap_end();
class bad_alloc : public ex::bad_alloc {};
}
#endif