/trunk/kernel/arch/sparc64/src/mm/page.c |
---|
26,7 → 26,7 |
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
*/ |
/** @addtogroup sparc64mm |
/** @addtogroup sparc64mm |
* @{ |
*/ |
/** @file |
41,7 → 41,11 |
#include <debug.h> |
#include <align.h> |
#include <config.h> |
#include <ddi/ddi.h> |
/** Physical memory area for devices. */ |
static parea_t dev_area; |
#ifdef CONFIG_SMP |
/** Entries locked in DTLB of BSP. |
* |
164,10 → 168,11 |
return virtaddr; |
} |
void hw_area(uintptr_t *physaddr, pfn_t *frames) |
void hw_area(void) |
{ |
*physaddr = end_frame; |
*frames = ADDR2PFN(0x7ffffffffff - end_frame); |
dev_area.pbase = end_frame; |
dev_area.frames = SIZE2FRAMES(0x7ffffffffff - end_frame); |
ddi_parea_register(&dev_area); |
} |
/** @} |
/trunk/kernel/arch/ia64/include/mm/tlb.h |
---|
35,9 → 35,6 |
#ifndef KERN_ia64_TLB_H_ |
#define KERN_ia64_TLB_H_ |
#define tlb_arch_init() |
#define tlb_print() |
#include <arch/mm/page.h> |
#include <arch/mm/asid.h> |
#include <arch/interrupt.h> |
/trunk/kernel/arch/ia64/src/mm/tlb.c |
---|
749,5 → 749,13 |
} |
} |
void tlb_arch_init(void) |
{ |
} |
void tlb_print(void) |
{ |
} |
/** @} |
*/ |
/trunk/kernel/arch/ia64/src/mm/page.c |
---|
27,7 → 27,7 |
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
*/ |
/** @addtogroup ia64mm |
/** @addtogroup ia64mm |
* @{ |
*/ |
/** @file |
48,7 → 48,11 |
#include <arch/barrier.h> |
#include <memstr.h> |
#include <align.h> |
#include <ddi/ddi.h> |
/** Physical memory area for devices. */ |
static parea_t dev_area; |
static void set_environment(void); |
/** Initialize ia64 virtual address translation subsystem. */ |
274,10 → 278,11 |
return PA2KA(physaddr); |
} |
void hw_area(uintptr_t *physaddr, pfn_t *frames) |
void hw_area(void) |
{ |
*physaddr = end_frame; |
*frames = ADDR2PFN(0x7fffffffffffffffUL - end_frame); |
dev_area.pbase = end_frame; |
dev_area.frames = SIZE2FRAMES(0x7fffffffffffffffUL - end_frame); |
ddi_parea_register(&dev_area); |
} |
/** @} |
/trunk/kernel/arch/arm32/include/mm/tlb.h |
---|
36,9 → 36,6 |
#ifndef KERN_arm32_TLB_H_ |
#define KERN_arm32_TLB_H_ |
#define tlb_arch_init() |
#define tlb_print() |
#endif |
/** @} |
/trunk/kernel/arch/arm32/src/mm/tlb.c |
---|
89,5 → 89,13 |
invalidate_page(page + i * PAGE_SIZE); |
} |
void tlb_arch_init(void) |
{ |
} |
void tlb_print(void) |
{ |
} |
/** @} |
*/ |
/trunk/kernel/arch/arm32/src/mm/page.c |
---|
43,7 → 43,11 |
#include <arch/types.h> |
#include <interrupt.h> |
#include <arch/mm/frame.h> |
#include <ddi/ddi.h> |
/** Physical memory area for devices. */ |
static parea_t dev_area; |
/** Initializes page tables. |
* |
* 1:1 virtual-physical mapping is created in kernel address space. Mapping |
106,10 → 110,11 |
return virtaddr; |
} |
void hw_area(uintptr_t *physaddr, pfn_t *frames) |
void hw_area(void) |
{ |
*physaddr = end_frame; |
*frames = ADDR2PFN(0xffffffff - end_frame); |
dev_area.pbase = end_frame; |
dev_area.frames = SIZE2FRAMES(0xffffffff - end_frame); |
ddi_parea_register(&dev_area); |
} |
/** @} |
/trunk/kernel/arch/ppc32/src/mm/page.c |
---|
37,7 → 37,11 |
#include <mm/as.h> |
#include <align.h> |
#include <config.h> |
#include <ddi/ddi.h> |
/** Physical memory area for devices. */ |
static parea_t dev_area; |
void page_arch_init(void) |
{ |
if (config.cpu_active == 1) |
63,10 → 67,11 |
return virtaddr; |
} |
void hw_area(uintptr_t *physaddr, pfn_t *frames) |
void hw_area(void) |
{ |
*physaddr = end_frame; |
*frames = ADDR2PFN(0xffffffff - end_frame); |
dev_area.pbase = end_frame; |
dev_area.frames = SIZE2FRAMES(0xffffffff - end_frame); |
ddi_parea_register(&dev_area); |
} |
/** @} |
/trunk/kernel/arch/amd64/include/mm/tlb.h |
---|
35,9 → 35,6 |
#ifndef KERN_amd64_TLB_H_ |
#define KERN_amd64_TLB_H_ |
#define tlb_arch_init() |
#define tlb_print() |
#endif |
/** @} |
/trunk/kernel/arch/amd64/src/mm/page.c |
---|
34,6 → 34,8 |
#include <arch/mm/page.h> |
#include <genarch/mm/page_pt.h> |
#include <genarch/drivers/ega/ega.h> |
#include <genarch/drivers/legacy/ia32/io.h> |
#include <arch/mm/frame.h> |
#include <mm/page.h> |
#include <mm/frame.h> |
46,7 → 48,12 |
#include <print.h> |
#include <panic.h> |
#include <align.h> |
#include <ddi/ddi.h> |
/** Physical memory area for devices. */ |
static parea_t dev_area; |
static parea_t ega_area; |
/* Definitions for identity page mapper */ |
pte_t helper_ptl1[512] __attribute__((aligned (PAGE_SIZE))); |
pte_t helper_ptl2[512] __attribute__((aligned (PAGE_SIZE))); |
214,10 → 221,15 |
return virtaddr; |
} |
void hw_area(uintptr_t *physaddr, pfn_t *frames) |
void hw_area(void) |
{ |
*physaddr = end_frame; |
*frames = ADDR2PFN(0xfffffffffffff - end_frame); |
dev_area.pbase = end_frame; |
dev_area.frames = SIZE2FRAMES(0xfffffffffffff - end_frame); |
ddi_parea_register(&dev_area); |
ega_area.pbase = EGA_VIDEORAM; |
ega_area.frames = SIZE2FRAMES(EGA_VRAM_SIZE); |
ddi_parea_register(&ega_area); |
} |
/** @} |
/trunk/kernel/arch/mips32/src/mm/page.c |
---|
36,7 → 36,11 |
#include <genarch/mm/page_pt.h> |
#include <mm/page.h> |
#include <mm/frame.h> |
#include <ddi/ddi.h> |
/** Physical memory area for devices. */ |
static parea_t dev_area; |
void page_arch_init(void) |
{ |
page_mapping_operations = &pt_mapping_operations; |
51,10 → 55,11 |
return physaddr + 0xa0000000; |
} |
void hw_area(uintptr_t *physaddr, pfn_t *frames) |
void hw_area(void) |
{ |
*physaddr = end_frame; |
*frames = ADDR2PFN(0xffffffff - end_frame); |
dev_area.pbase = end_frame; |
dev_area.frames = SIZE2FRAMES(0xffffffff - end_frame); |
ddi_parea_register(&dev_area); |
} |
/** @} |
/trunk/kernel/arch/ia32/include/mm/tlb.h |
---|
26,7 → 26,7 |
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
*/ |
/** @addtogroup ia32mm |
/** @addtogroup ia32mm |
* @{ |
*/ |
/** @file |
35,9 → 35,6 |
#ifndef KERN_ia32_TLB_H_ |
#define KERN_ia32_TLB_H_ |
#define tlb_arch_init() |
#define tlb_print() |
#endif |
/** @} |
/trunk/kernel/arch/ia32/src/mm/tlb.c |
---|
67,5 → 67,13 |
invlpg(page + i * PAGE_SIZE); |
} |
void tlb_arch_init(void) |
{ |
} |
void tlb_print(void) |
{ |
} |
/** @} |
*/ |
/trunk/kernel/arch/ia32/src/mm/page.c |
---|
34,6 → 34,8 |
#include <arch/mm/page.h> |
#include <genarch/mm/page_pt.h> |
#include <genarch/drivers/ega/ega.h> |
#include <genarch/drivers/legacy/ia32/io.h> |
#include <arch/mm/frame.h> |
#include <mm/frame.h> |
#include <mm/page.h> |
48,7 → 50,12 |
#include <memstr.h> |
#include <print.h> |
#include <interrupt.h> |
#include <ddi/ddi.h> |
/** Physical memory area for devices. */ |
static parea_t dev_area; |
static parea_t ega_area; |
void page_arch_init(void) |
{ |
uintptr_t cur; |
93,10 → 100,15 |
return virtaddr; |
} |
void hw_area(uintptr_t *physaddr, pfn_t *frames) |
void hw_area(void) |
{ |
*physaddr = end_frame; |
*frames = ADDR2PFN(0xffffffff - end_frame); |
dev_area.pbase = end_frame; |
dev_area.frames = SIZE2FRAMES(0xffffffff - end_frame); |
ddi_parea_register(&dev_area); |
ega_area.pbase = EGA_VIDEORAM; |
ega_area.frames = SIZE2FRAMES(EGA_VRAM_SIZE); |
ddi_parea_register(&ega_area); |
} |
void page_fault(int n __attribute__((unused)), istate_t *istate) |