Merge branch 'for-linus' of git://ftp.arm.linux.org.uk/~rmk/linux-arm
[pandora-kernel.git] / arch / arm / mm / init.c
index 1609b02..be92fa0 100644 (file)
@@ -86,55 +86,6 @@ static int __init parse_tag_initrd2(const struct tag *tag)
 
 __tagtable(ATAG_INITRD2, parse_tag_initrd2);
 
-/*
- * This keeps memory configuration data used by a couple memory
- * initialization functions, as well as show_mem() for the skipping
- * of holes in the memory map.  It is populated by arm_add_memory().
- */
-void show_mem(unsigned int filter)
-{
-       int free = 0, total = 0, reserved = 0;
-       int shared = 0, cached = 0, slab = 0;
-       struct memblock_region *reg;
-
-       printk("Mem-info:\n");
-       show_free_areas(filter);
-
-       for_each_memblock (memory, reg) {
-               unsigned int pfn1, pfn2;
-               struct page *page, *end;
-
-               pfn1 = memblock_region_memory_base_pfn(reg);
-               pfn2 = memblock_region_memory_end_pfn(reg);
-
-               page = pfn_to_page(pfn1);
-               end  = pfn_to_page(pfn2 - 1) + 1;
-
-               do {
-                       total++;
-                       if (PageReserved(page))
-                               reserved++;
-                       else if (PageSwapCache(page))
-                               cached++;
-                       else if (PageSlab(page))
-                               slab++;
-                       else if (!page_count(page))
-                               free++;
-                       else
-                               shared += page_count(page) - 1;
-                       pfn1++;
-                       page = pfn_to_page(pfn1);
-               } while (pfn1 < pfn2);
-       }
-
-       printk("%d pages of RAM\n", total);
-       printk("%d free pages\n", free);
-       printk("%d reserved pages\n", reserved);
-       printk("%d slab pages\n", slab);
-       printk("%d pages shared\n", shared);
-       printk("%d pages swap cached\n", cached);
-}
-
 static void __init find_limits(unsigned long *min, unsigned long *max_low,
                               unsigned long *max_high)
 {
@@ -335,6 +286,9 @@ void __init bootmem_init(void)
 
        find_limits(&min, &max_low, &max_high);
 
+       early_memtest((phys_addr_t)min << PAGE_SHIFT,
+                     (phys_addr_t)max_low << PAGE_SHIFT);
+
        /*
         * Sparsemem tries to allocate bootmem in memory_present(),
         * so must be done after the fixed reservations