Merge tag 'm68k-for-v4.20-tag2' of git://git.kernel.org/pub/scm/linux/kernel/git...
[sfrench/cifs-2.6.git] / arch / m68k / mm / motorola.c
index 4e17ecb5928aae85155c9f6a5b0b0704a24b1100..3f3d0bf360910c0d45095a0ef51db604afe5b02b 100644 (file)
@@ -18,7 +18,6 @@
 #include <linux/string.h>
 #include <linux/types.h>
 #include <linux/init.h>
-#include <linux/bootmem.h>
 #include <linux/memblock.h>
 #include <linux/gfp.h>
 
@@ -55,7 +54,7 @@ static pte_t * __init kernel_page_table(void)
 {
        pte_t *ptablep;
 
-       ptablep = (pte_t *)alloc_bootmem_low_pages(PAGE_SIZE);
+       ptablep = (pte_t *)memblock_alloc_low(PAGE_SIZE, PAGE_SIZE);
 
        clear_page(ptablep);
        __flush_page_to_ram(ptablep);
@@ -95,7 +94,8 @@ static pmd_t * __init kernel_ptr_table(void)
 
        last_pgtable += PTRS_PER_PMD;
        if (((unsigned long)last_pgtable & ~PAGE_MASK) == 0) {
-               last_pgtable = (pmd_t *)alloc_bootmem_low_pages(PAGE_SIZE);
+               last_pgtable = (pmd_t *)memblock_alloc_low(PAGE_SIZE,
+                                                          PAGE_SIZE);
 
                clear_page(last_pgtable);
                __flush_page_to_ram(last_pgtable);
@@ -228,6 +228,7 @@ void __init paging_init(void)
 
        min_addr = m68k_memory[0].addr;
        max_addr = min_addr + m68k_memory[0].size;
+       memblock_add(m68k_memory[0].addr, m68k_memory[0].size);
        for (i = 1; i < m68k_num_memory;) {
                if (m68k_memory[i].addr < min_addr) {
                        printk("Ignoring memory chunk at 0x%lx:0x%lx before the first chunk\n",
@@ -238,6 +239,7 @@ void __init paging_init(void)
                                (m68k_num_memory - i) * sizeof(struct m68k_mem_info));
                        continue;
                }
+               memblock_add(m68k_memory[i].addr, m68k_memory[i].size);
                addr = m68k_memory[i].addr + m68k_memory[i].size;
                if (addr > max_addr)
                        max_addr = addr;
@@ -275,7 +277,7 @@ void __init paging_init(void)
         * initialize the bad page table and bad page to point
         * to a couple of allocated pages
         */
-       empty_zero_page = alloc_bootmem_pages(PAGE_SIZE);
+       empty_zero_page = memblock_alloc(PAGE_SIZE, PAGE_SIZE);
 
        /*
         * Set up SFC/DFC registers