2 * Copyright (C) 2000 - 2003 Jeff Dike (jdike@addtoit.com)
3 * Licensed under the GPL
11 #include "asm/arch/page.h"
19 #undef virt_addr_valid
24 extern unsigned long uml_physmem
;
26 #define PAGE_OFFSET (uml_physmem)
27 #define KERNELBASE PAGE_OFFSET
29 #define __va_space (8*1024*1024)
31 extern unsigned long to_phys(void *virt
);
32 extern void *to_virt(unsigned long phys
);
34 #define __pa(virt) to_phys((void *) virt)
35 #define __va(phys) to_virt((unsigned long) phys)
37 #define page_to_pfn(page) ((page) - mem_map)
38 #define pfn_to_page(pfn) (mem_map + (pfn))
40 #define phys_to_pfn(p) ((p) >> PAGE_SHIFT)
41 #define pfn_to_phys(pfn) ((pfn) << PAGE_SHIFT)
43 #define pfn_valid(pfn) ((pfn) < max_mapnr)
44 #define virt_addr_valid(v) pfn_valid(phys_to_pfn(__pa(v)))
46 extern struct page
*arch_validate(struct page
*page
, int mask
, int order
);
47 #define HAVE_ARCH_VALIDATE
49 extern void arch_free_page(struct page
*page
, int order
);
50 #define HAVE_ARCH_FREE_PAGE