diff options
author | Atsushi Nemoto <anemo@mba.ocn.ne.jp> | 2006-12-30 00:43:59 +0900 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2007-02-06 16:53:09 +0000 |
commit | c44e8d5e47b8ba672440b92eab0735628469116c (patch) | |
tree | f85364a9482003bf51e3cb10d0725ff3f57ce87c /arch/mips/dec | |
parent | 2fa7937bd8922e1fe4aae6a45e7e787fa45d6043 (diff) | |
download | lwn-c44e8d5e47b8ba672440b92eab0735628469116c.tar.gz lwn-c44e8d5e47b8ba672440b92eab0735628469116c.zip |
[MIPS] prom_free_prom_memory cleanup
Current prom_free_prom_memory() implementations are almost same as
free_init_pages(), or no-op. Make free_init_pages() extern (again)
and make prom_free_prom_memory() use it.
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/dec')
-rw-r--r-- | arch/mips/dec/prom/memory.c | 17 |
1 files changed, 3 insertions, 14 deletions
diff --git a/arch/mips/dec/prom/memory.c b/arch/mips/dec/prom/memory.c index 3aa01d268f2d..5a557e268f78 100644 --- a/arch/mips/dec/prom/memory.c +++ b/arch/mips/dec/prom/memory.c @@ -92,9 +92,9 @@ void __init prom_meminit(u32 magic) rex_setup_memory_region(); } -unsigned long __init prom_free_prom_memory(void) +void __init prom_free_prom_memory(void) { - unsigned long addr, end; + unsigned long end; /* * Free everything below the kernel itself but leave @@ -114,16 +114,5 @@ unsigned long __init prom_free_prom_memory(void) #endif end = __pa(&_text); - addr = PAGE_SIZE; - while (addr < end) { - ClearPageReserved(virt_to_page(__va(addr))); - init_page_count(virt_to_page(__va(addr))); - free_page((unsigned long)__va(addr)); - addr += PAGE_SIZE; - } - - printk("Freeing unused PROM memory: %ldkb freed\n", - (end - PAGE_SIZE) >> 10); - - return end - PAGE_SIZE; + free_init_pages("unused PROM memory", PAGE_SIZE, end); } |