/branches/arm/kernel/arch/arm32/include/mm/asid.h |
---|
42,9 → 42,9 |
typedef uint8_t asid_t; |
#define asid_get() ( ASID_START + 1 ) |
/* this works due to that this file is never included alone but only throught |
"generic/include/mm/asid.h" where ASID_START is defined |
#define asid_get() ( ASID_START + 1 ) |
/* this works due to fact that this file is never included alone but only |
throught "generic/include/mm/asid.h" where ASID_START is defined |
*/ |
#define asid_put(asid) |
/branches/arm/kernel/arch/arm32/src/mm/tlb.c |
---|
59,6 → 59,7 |
} |
/** Invalidate single entry in TLB |
* |
* @param page Virtual adress of the page |
*/ |
static inline void invalidate_page(uintptr_t page) |
/branches/arm/kernel/arch/arm32/src/mm/page_fault.c |
---|
42,6 → 42,7 |
/** Returns value stored in fault status register. |
* FSR contain reason of page fault |
* |
* \return Value stored in CP15 fault status register (FSR). |
*/ |
/branches/arm/kernel/arch/arm32/src/mm/memory_init.c |
---|
36,6 → 36,10 |
#include <arch/mm/page.h> |
#include <arch/machine.h> |
/** Determine instaled memory size |
* |
* @returm Memory size in bytes |
*/ |
size_t get_memory_size(void) |
{ |
return machine_get_memory_size(); |
/branches/arm/kernel/arch/arm32/src/mm/page.c |
---|
63,13 → 63,15 |
// create mapping for exception table at high offset |
#ifdef HIGH_EXCEPTION_VECTORS |
// Note: this mapping cann't be done by hw_map because fixed exception |
// vector is stored at fixed virtual address |
// reserve frame for exception table |
/* Note: this mapping cann't be done by hw_map because fixed |
exception vector is stored at fixed virtual address |
reserve frame for exception table |
*/ |
void* virtaddr = frame_alloc(ONE_FRAME, FRAME_KA); |
page_mapping_insert(AS_KERNEL, EXC_BASE_ADDRESS, KA2PA(virtaddr), flags); |
#else |
#error "Only high eception vector supported now" |
#endif |
// TODO: #else |
as_switch(NULL, AS_KERNEL); |