summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2017-08-02 15:48:03 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2017-08-22 16:27:03 +0200
commit95a4b1f975287929e76807130f9ee3cfef6840d4 (patch)
treefb2f4aba1cb0bfbc94444b6516f03ca661e97dff
parentpowerpc: PPC64_NOP_FOR_LINKER_TOC_POINTER_RESTORE (diff)
downloadrtems-95a4b1f975287929e76807130f9ee3cfef6840d4.tar.bz2
bsp/qoriq: Enable > 2GiB memory
Update #3082.
-rw-r--r--c/src/lib/libbsp/powerpc/qoriq/startup/linkcmds.qoriq_e6500_3210
-rw-r--r--c/src/lib/libbsp/powerpc/qoriq/startup/mmu-config.c2
2 files changed, 7 insertions, 5 deletions
diff --git a/c/src/lib/libbsp/powerpc/qoriq/startup/linkcmds.qoriq_e6500_32 b/c/src/lib/libbsp/powerpc/qoriq/startup/linkcmds.qoriq_e6500_32
index 09bfcdc20d..7b1229477c 100644
--- a/c/src/lib/libbsp/powerpc/qoriq/startup/linkcmds.qoriq_e6500_32
+++ b/c/src/lib/libbsp/powerpc/qoriq/startup/linkcmds.qoriq_e6500_32
@@ -6,8 +6,8 @@
MEMORY {
LOW : ORIGIN = 0x00004000, LENGTH = 16M - 16k
- HIGH : ORIGIN = 0x01000000, LENGTH = 2048M - 80M
- NOCACHE : ORIGIN = 0x7c000000, LENGTH = 64M
+ NOCACHE : ORIGIN = 0x01000000, LENGTH = 48M
+ HIGH : ORIGIN = 0x04000000, LENGTH = 2048M - 64M
EMPTY : ORIGIN = 0x00000000, LENGTH = 0
}
@@ -32,8 +32,8 @@ REGION_ALIAS ("REGION_NVRAM", EMPTY);
bsp_section_robarrier_align = 0x1000000;
bsp_section_rwbarrier_align = 0x1000000;
-qoriq = 0xfe000000;
-qoriq_bman_portal = 0xf4000000;
-qoriq_qman_portal = 0xf6000000;
+qoriq = 0xffe000000;
+qoriq_bman_portal = 0xff4000000;
+qoriq_qman_portal = 0xff6000000;
INCLUDE linkcmds.base
diff --git a/c/src/lib/libbsp/powerpc/qoriq/startup/mmu-config.c b/c/src/lib/libbsp/powerpc/qoriq/startup/mmu-config.c
index 38026fb17b..ab0d080ec8 100644
--- a/c/src/lib/libbsp/powerpc/qoriq/startup/mmu-config.c
+++ b/c/src/lib/libbsp/powerpc/qoriq/startup/mmu-config.c
@@ -177,7 +177,9 @@ static void TEXT config_fdt_adjust(void)
size = 0;
}
+#ifndef __powerpc64__
size = MIN(size, 0x80000000U);
+#endif
if (
begin == 0