aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mm/init.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mm/init.c')
-rw-r--r--arch/arm/mm/init.c19
1 files changed, 9 insertions, 10 deletions
diff --git a/arch/arm/mm/init.c b/arch/arm/mm/init.c
index 91bca355cd31..fbdd12ea3a58 100644
--- a/arch/arm/mm/init.c
+++ b/arch/arm/mm/init.c
@@ -13,6 +13,7 @@
13#include <linux/init.h> 13#include <linux/init.h>
14#include <linux/bootmem.h> 14#include <linux/bootmem.h>
15#include <linux/mman.h> 15#include <linux/mman.h>
16#include <linux/export.h>
16#include <linux/nodemask.h> 17#include <linux/nodemask.h>
17#include <linux/initrd.h> 18#include <linux/initrd.h>
18#include <linux/of_fdt.h> 19#include <linux/of_fdt.h>
@@ -298,7 +299,7 @@ static void __init arm_bootmem_free(unsigned long min, unsigned long max_low,
298#ifdef CONFIG_HAVE_ARCH_PFN_VALID 299#ifdef CONFIG_HAVE_ARCH_PFN_VALID
299int pfn_valid(unsigned long pfn) 300int pfn_valid(unsigned long pfn)
300{ 301{
301 return memblock_is_memory(pfn << PAGE_SHIFT); 302 return memblock_is_memory(__pfn_to_phys(pfn));
302} 303}
303EXPORT_SYMBOL(pfn_valid); 304EXPORT_SYMBOL(pfn_valid);
304#endif 305#endif
@@ -496,6 +497,13 @@ static void __init free_unused_memmap(struct meminfo *mi)
496 */ 497 */
497 bank_start = min(bank_start, 498 bank_start = min(bank_start,
498 ALIGN(prev_bank_end, PAGES_PER_SECTION)); 499 ALIGN(prev_bank_end, PAGES_PER_SECTION));
500#else
501 /*
502 * Align down here since the VM subsystem insists that the
503 * memmap entries are valid from the bank start aligned to
504 * MAX_ORDER_NR_PAGES.
505 */
506 bank_start = round_down(bank_start, MAX_ORDER_NR_PAGES);
499#endif 507#endif
500 /* 508 /*
501 * If we had a previous bank, and there is a space 509 * If we had a previous bank, and there is a space
@@ -653,9 +661,6 @@ void __init mem_init(void)
653 " ITCM : 0x%08lx - 0x%08lx (%4ld kB)\n" 661 " ITCM : 0x%08lx - 0x%08lx (%4ld kB)\n"
654#endif 662#endif
655 " fixmap : 0x%08lx - 0x%08lx (%4ld kB)\n" 663 " fixmap : 0x%08lx - 0x%08lx (%4ld kB)\n"
656#ifdef CONFIG_MMU
657 " DMA : 0x%08lx - 0x%08lx (%4ld MB)\n"
658#endif
659 " vmalloc : 0x%08lx - 0x%08lx (%4ld MB)\n" 664 " vmalloc : 0x%08lx - 0x%08lx (%4ld MB)\n"
660 " lowmem : 0x%08lx - 0x%08lx (%4ld MB)\n" 665 " lowmem : 0x%08lx - 0x%08lx (%4ld MB)\n"
661#ifdef CONFIG_HIGHMEM 666#ifdef CONFIG_HIGHMEM
@@ -674,9 +679,6 @@ void __init mem_init(void)
674 MLK(ITCM_OFFSET, (unsigned long) itcm_end), 679 MLK(ITCM_OFFSET, (unsigned long) itcm_end),
675#endif 680#endif
676 MLK(FIXADDR_START, FIXADDR_TOP), 681 MLK(FIXADDR_START, FIXADDR_TOP),
677#ifdef CONFIG_MMU
678 MLM(CONSISTENT_BASE, CONSISTENT_END),
679#endif
680 MLM(VMALLOC_START, VMALLOC_END), 682 MLM(VMALLOC_START, VMALLOC_END),
681 MLM(PAGE_OFFSET, (unsigned long)high_memory), 683 MLM(PAGE_OFFSET, (unsigned long)high_memory),
682#ifdef CONFIG_HIGHMEM 684#ifdef CONFIG_HIGHMEM
@@ -699,9 +701,6 @@ void __init mem_init(void)
699 * be detected at build time already. 701 * be detected at build time already.
700 */ 702 */
701#ifdef CONFIG_MMU 703#ifdef CONFIG_MMU
702 BUILD_BUG_ON(VMALLOC_END > CONSISTENT_BASE);
703 BUG_ON(VMALLOC_END > CONSISTENT_BASE);
704
705 BUILD_BUG_ON(TASK_SIZE > MODULES_VADDR); 704 BUILD_BUG_ON(TASK_SIZE > MODULES_VADDR);
706 BUG_ON(TASK_SIZE > MODULES_VADDR); 705 BUG_ON(TASK_SIZE > MODULES_VADDR);
707#endif 706#endif