[PATCH] FRV: Permit the memory to be located elsewhere in NOMMU mode

From: David Howells
Date: Mon Oct 29 2007 - 11:20:47 EST


From: David Howells <dhowells@xxxxxxxxxx>

Permit the memory to be located somewhere other than address 0xC0000000 in
NOMMU mode. The configuration options are already present, it just requires
wiring up in the linker script.

Note that only a limited set of locations of runtime addresses are available
because of the way the CPU protection registers work.

Signed-off-by: David Howells <dhowells@xxxxxxxxxx>
---

arch/frv/kernel/vmlinux.lds.S | 16 +++++++++++++++-
1 files changed, 15 insertions(+), 1 deletions(-)

diff --git a/arch/frv/kernel/vmlinux.lds.S b/arch/frv/kernel/vmlinux.lds.S
index 3b71e0c..7dd9996 100644
--- a/arch/frv/kernel/vmlinux.lds.S
+++ b/arch/frv/kernel/vmlinux.lds.S
@@ -13,7 +13,21 @@ ENTRY(_start)

jiffies = jiffies_64 + 4;

-__page_offset = 0xc0000000; /* start of area covered by struct pages */
+/* start of area covered by struct pages */
+#if defined(CONFIG_UCPAGE_OFFSET_20000000)
+__page_offset = 0x20000000;
+#elif defined(CONFIG_UCPAGE_OFFSET_40000000)
+__page_offset = 0x40000000;
+#elif defined(CONFIG_UCPAGE_OFFSET_60000000)
+__page_offset = 0x60000000;
+#elif defined(CONFIG_UCPAGE_OFFSET_80000000)
+__page_offset = 0x80000000;
+#elif defined(CONFIG_UCPAGE_OFFSET_A0000000)
+__page_offset = 0xa0000000;
+#else
+__page_offset = 0xc0000000;
+#endif
+
__kernel_image_start = __page_offset; /* address at which kernel image resides */

SECTIONS

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/