summaryrefslogtreecommitdiffstats
path: root/arch/arm/lib32/armlinux.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/lib32/armlinux.c')
-rw-r--r--arch/arm/lib32/armlinux.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/arch/arm/lib32/armlinux.c b/arch/arm/lib32/armlinux.c
index 6cb7d4b5f3..eb30f4a952 100644
--- a/arch/arm/lib32/armlinux.c
+++ b/arch/arm/lib32/armlinux.c
@@ -18,6 +18,7 @@
#include <memory.h>
#include <of.h>
#include <magicvar.h>
+#include <zero_page.h>
#include <asm/byteorder.h>
#include <asm/setup.h>
@@ -265,8 +266,12 @@ void start_linux(void *adr, int swap, unsigned long initrd_address,
pr_debug("booting kernel with devicetree\n");
params = oftree;
} else {
- setup_tags(initrd_address, initrd_size, swap);
params = armlinux_get_bootparams();
+
+ if ((unsigned long)params < PAGE_SIZE)
+ zero_page_access();
+
+ setup_tags(initrd_address, initrd_size, swap);
}
architecture = armlinux_get_architecture();