summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGeert Uytterhoeven <geert@linux-m68k.org>2015-11-15 11:46:55 +0100
committerGeert Uytterhoeven <geert@linux-m68k.org>2015-11-22 11:35:25 +0100
commitb66f55cdba5559dedd295356bb5138c5ceadb694 (patch)
treecb11fab5ae087552d4aaf4f9602777247750f241
parentm68k/mm: sun3 - Add missing initialization of max_pfn and {min,max}_low_pfn (diff)
downloadlinux-b66f55cdba5559dedd295356bb5138c5ceadb694.tar.xz
linux-b66f55cdba5559dedd295356bb5138c5ceadb694.zip
m68knommu: Add missing initialization of max_pfn and {min,max}_low_pfn
If max_pfn is not initialized, the block layer may use wrong DMA masks. Replace open-coded shifts by PFN_DOWN(), and drop the "0 on coldfire" comment, as it is not even true on all Coldfires, let alone all m68knommu platforms. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Acked-by: Greg Ungerer <gerg@uclinux.org> Tested-By: Greg Ungerer <gerg@uclinux.org>
-rw-r--r--arch/m68k/kernel/setup_no.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/arch/m68k/kernel/setup_no.c b/arch/m68k/kernel/setup_no.c
index 88c27d94a721..76b9113f3092 100644
--- a/arch/m68k/kernel/setup_no.c
+++ b/arch/m68k/kernel/setup_no.c
@@ -238,11 +238,14 @@ void __init setup_arch(char **cmdline_p)
* Give all the memory to the bootmap allocator, tell it to put the
* boot mem_map at the start of memory.
*/
+ min_low_pfn = PFN_DOWN(memory_start);
+ max_pfn = max_low_pfn = PFN_DOWN(memory_end);
+
bootmap_size = init_bootmem_node(
NODE_DATA(0),
- memory_start >> PAGE_SHIFT, /* map goes here */
- PAGE_OFFSET >> PAGE_SHIFT, /* 0 on coldfire */
- memory_end >> PAGE_SHIFT);
+ min_low_pfn, /* map goes here */
+ PFN_DOWN(PAGE_OFFSET),
+ max_pfn);
/*
* Free the usable memory, we have to make sure we do not free
* the bootmem bitmap so we then reserve it after freeing it :-)