aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatt Redfearn <matt.redfearn@imgtec.com>2016-05-25 07:58:40 -0400
committerRalf Baechle <ralf@linux-mips.org>2016-05-28 06:35:11 -0400
commit41cc07be42835a5c35b409af3914b8fcaedd0d72 (patch)
tree6b2b1ce24ebb02daa568c1e1d9657f4308742255
parentaedcfbe06558a9f53002e82d5be64c6c94687726 (diff)
MIPS: Pistachio: Enable KASLR
Allow KASLR to be selected on Pistachio based systems. Tested on a Creator Ci40. Signed-off-by: Matt Redfearn <matt.redfearn@imgtec.com> Reviewed-by: James Hogan <james.hogan@imgtec.com> Cc: Andrew Bresticker <abrestic@chromium.org> Cc: Jonas Gorski <jogo@openwrt.org> Cc: linux-kernel@vger.kernel.org Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/13356/ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
-rw-r--r--arch/mips/Kconfig1
-rw-r--r--arch/mips/pistachio/init.c8
2 files changed, 7 insertions, 2 deletions
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index ac9bfad794eb..7ce55623b522 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -399,6 +399,7 @@ config MACH_PISTACHIO
399 select SYS_SUPPORTS_LITTLE_ENDIAN 399 select SYS_SUPPORTS_LITTLE_ENDIAN
400 select SYS_SUPPORTS_MIPS_CPS 400 select SYS_SUPPORTS_MIPS_CPS
401 select SYS_SUPPORTS_MULTITHREADING 401 select SYS_SUPPORTS_MULTITHREADING
402 select SYS_SUPPORTS_RELOCATABLE
402 select SYS_SUPPORTS_ZBOOT 403 select SYS_SUPPORTS_ZBOOT
403 select SYS_HAS_EARLY_PRINTK 404 select SYS_HAS_EARLY_PRINTK
404 select USE_GENERIC_EARLY_PRINTK_8250 405 select USE_GENERIC_EARLY_PRINTK_8250
diff --git a/arch/mips/pistachio/init.c b/arch/mips/pistachio/init.c
index 956c92eabfab..ab79828230ab 100644
--- a/arch/mips/pistachio/init.c
+++ b/arch/mips/pistachio/init.c
@@ -83,12 +83,16 @@ static void __init plat_setup_iocoherency(void)
83 } 83 }
84} 84}
85 85
86void __init plat_mem_setup(void) 86void __init *plat_get_fdt(void)
87{ 87{
88 if (fw_arg0 != -2) 88 if (fw_arg0 != -2)
89 panic("Device-tree not present"); 89 panic("Device-tree not present");
90 return (void *)fw_arg1;
91}
90 92
91 __dt_setup_arch((void *)fw_arg1); 93void __init plat_mem_setup(void)
94{
95 __dt_setup_arch(plat_get_fdt());
92 96
93 plat_setup_iocoherency(); 97 plat_setup_iocoherency();
94} 98}