|
@@ -40,6 +40,7 @@
|
|
|
#include <linux/device.h>
|
|
|
#include <linux/of_platform.h>
|
|
|
|
|
|
+#include <asm/sections.h>
|
|
|
#include <asm/segment.h>
|
|
|
#include <asm/pgtable.h>
|
|
|
#include <asm/types.h>
|
|
@@ -77,7 +78,7 @@ static unsigned long __init setup_memory(void)
|
|
|
|
|
|
ram_start_pfn = PFN_UP(memory_start);
|
|
|
/* free_ram_start_pfn is first page after kernel */
|
|
|
- free_ram_start_pfn = PFN_UP(__pa(&_end));
|
|
|
+ free_ram_start_pfn = PFN_UP(__pa(_end));
|
|
|
ram_end_pfn = PFN_DOWN(memblock_end_of_DRAM());
|
|
|
|
|
|
max_pfn = ram_end_pfn;
|
|
@@ -290,10 +291,10 @@ void __init setup_arch(char **cmdline_p)
|
|
|
setup_cpuinfo();
|
|
|
|
|
|
/* process 1's initial memory region is the kernel code/data */
|
|
|
- init_mm.start_code = (unsigned long)&_stext;
|
|
|
- init_mm.end_code = (unsigned long)&_etext;
|
|
|
- init_mm.end_data = (unsigned long)&_edata;
|
|
|
- init_mm.brk = (unsigned long)&_end;
|
|
|
+ init_mm.start_code = (unsigned long)_stext;
|
|
|
+ init_mm.end_code = (unsigned long)_etext;
|
|
|
+ init_mm.end_data = (unsigned long)_edata;
|
|
|
+ init_mm.brk = (unsigned long)_end;
|
|
|
|
|
|
#ifdef CONFIG_BLK_DEV_INITRD
|
|
|
initrd_start = (unsigned long)&__initrd_start;
|