summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/arm/imx/startup
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2017-09-26 07:10:40 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2017-09-27 10:59:09 +0200
commit561698315f50258832ad41453318b1dcbd00ed49 (patch)
tree9211182bba6dd8d06945cd22f28f90d696111aa0 /c/src/lib/libbsp/arm/imx/startup
parentbsp/imx: Provide a default console (diff)
downloadrtems-561698315f50258832ad41453318b1dcbd00ed49.tar.bz2
bsp/imx: Add nocache section
Update #3090.
Diffstat (limited to 'c/src/lib/libbsp/arm/imx/startup')
-rw-r--r--c/src/lib/libbsp/arm/imx/startup/bspstart.c5
-rw-r--r--c/src/lib/libbsp/arm/imx/startup/linkcmds.imx77
2 files changed, 9 insertions, 3 deletions
diff --git a/c/src/lib/libbsp/arm/imx/startup/bspstart.c b/c/src/lib/libbsp/arm/imx/startup/bspstart.c
index e28fe2bc48..f715726fb0 100644
--- a/c/src/lib/libbsp/arm/imx/startup/bspstart.c
+++ b/c/src/lib/libbsp/arm/imx/startup/bspstart.c
@@ -17,6 +17,7 @@
#include <bsp/fatal.h>
#include <bsp/fdt.h>
#include <bsp/irq-generic.h>
+#include <bsp/linker-symbols.h>
#include <libfdt.h>
@@ -57,4 +58,8 @@ void arm_generic_timer_get_config(
void bsp_start(void)
{
bsp_interrupt_initialize();
+ rtems_cache_coherent_add_area(
+ bsp_section_nocacheheap_begin,
+ (uintptr_t) bsp_section_nocacheheap_size
+ );
}
diff --git a/c/src/lib/libbsp/arm/imx/startup/linkcmds.imx7 b/c/src/lib/libbsp/arm/imx/startup/linkcmds.imx7
index 6cb9fc3f39..750e1def1d 100644
--- a/c/src/lib/libbsp/arm/imx/startup/linkcmds.imx7
+++ b/c/src/lib/libbsp/arm/imx/startup/linkcmds.imx7
@@ -1,6 +1,7 @@
MEMORY {
RAM_MMU : ORIGIN = 0x80000000, LENGTH = 16k
- RAM : ORIGIN = 0x80004000, LENGTH = 512M - 16k
+ NOCACHE : ORIGIN = 0x80100000, LENGTH = 1M
+ RAM : ORIGIN = 0x80200000, LENGTH = 512M - 2M
}
REGION_ALIAS ("REGION_START", RAM);
@@ -18,8 +19,8 @@ REGION_ALIAS ("REGION_FAST_DATA_LOAD", RAM);
REGION_ALIAS ("REGION_BSS", RAM);
REGION_ALIAS ("REGION_WORK", RAM);
REGION_ALIAS ("REGION_STACK", RAM);
-REGION_ALIAS ("REGION_NOCACHE", RAM);
-REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM);
+REGION_ALIAS ("REGION_NOCACHE", NOCACHE);
+REGION_ALIAS ("REGION_NOCACHE_LOAD", NOCACHE);
bsp_processor_count = DEFINED (bsp_processor_count) ? bsp_processor_count : 2;