linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git] / arch / mips / mips-boards / sim / sim_mem.c
index f7ce769..0dbd743 100644 (file)
 #include <linux/init.h>
 #include <linux/mm.h>
 #include <linux/bootmem.h>
-#include <linux/pfn.h>
 
 #include <asm/bootinfo.h>
 #include <asm/page.h>
-#include <asm/sections.h>
 
 #include <asm/mips-boards/prom.h>
 
@@ -41,6 +39,12 @@ static char *mtypes[3] = {
 };
 #endif
 
+/* References to section boundaries */
+extern char _end;
+
+#define PFN_ALIGN(x)    (((unsigned long)(x) + (PAGE_SIZE - 1)) & PAGE_MASK)
+
+
 struct prom_pmemblock * __init prom_getmdesc(void)
 {
        unsigned int memsize;
@@ -113,7 +117,7 @@ unsigned long __init prom_free_prom_memory(void)
                while (addr < boot_mem_map.map[i].addr
                              + boot_mem_map.map[i].size) {
                        ClearPageReserved(virt_to_page(__va(addr)));
-                       init_page_count(virt_to_page(__va(addr)));
+                       set_page_count(virt_to_page(__va(addr)), 1);
                        free_page((unsigned long)__va(addr));
                        addr += PAGE_SIZE;
                        freed += PAGE_SIZE;