summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2016-04-21 11:39:28 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2016-04-22 09:25:10 +0200
commit6a46d9974f0275a8548db6d0e723afde89e017ac (patch)
tree18502916ad3a2e0edf39c7707132ceecbe94df07
parentrtems: Avoid Giant lock for dual ported memory (diff)
downloadrtems-6a46d9974f0275a8548db6d0e723afde89e017ac.tar.bz2
bsp/qoriq: Optionally initialize register HID0
Enable the L2MMU multiple-hit detection on the e6500 core.
-rw-r--r--c/src/lib/libbsp/powerpc/qoriq/configure.ac4
-rw-r--r--c/src/lib/libbsp/powerpc/qoriq/start/start.S8
2 files changed, 11 insertions, 1 deletions
diff --git a/c/src/lib/libbsp/powerpc/qoriq/configure.ac b/c/src/lib/libbsp/powerpc/qoriq/configure.ac
index bc78d7dfbb..66f26050aa 100644
--- a/c/src/lib/libbsp/powerpc/qoriq/configure.ac
+++ b/c/src/lib/libbsp/powerpc/qoriq/configure.ac
@@ -148,6 +148,10 @@ RTEMS_BSPOPTS_SET([QORIQ_TLB1_ENTRY_COUNT],[qoriq_t*],[64])
RTEMS_BSPOPTS_SET([QORIQ_TLB1_ENTRY_COUNT],[*],[16])
RTEMS_BSPOPTS_HELP([QORIQ_TLB1_ENTRY_COUNT],[TLB1 entry count])
+RTEMS_BSPOPTS_SET([QORIQ_INITIAL_HID0],[qoriq_t*],[0x40000000])
+RTEMS_BSPOPTS_SET([QORIQ_INITIAL_HID0],[*],[])
+RTEMS_BSPOPTS_HELP([QORIQ_INITIAL_HID0],[initial HID0 value (EN_L2MMU_MHD is set by default on the T-series)])
+
RTEMS_BSPOPTS_SET([QORIQ_INITIAL_MSR],[qoriq_t*],[0x02002200])
RTEMS_BSPOPTS_SET([QORIQ_INITIAL_MSR],[*],[0x02000200])
RTEMS_BSPOPTS_HELP([QORIQ_INITIAL_MSR],[initial MSR value])
diff --git a/c/src/lib/libbsp/powerpc/qoriq/start/start.S b/c/src/lib/libbsp/powerpc/qoriq/start/start.S
index 045c9c8eb7..b0e4960819 100644
--- a/c/src/lib/libbsp/powerpc/qoriq/start/start.S
+++ b/c/src/lib/libbsp/powerpc/qoriq/start/start.S
@@ -7,7 +7,7 @@
*/
/*
- * Copyright (c) 2010-2015 embedded brains GmbH. All rights reserved.
+ * Copyright (c) 2010, 2016 embedded brains GmbH. All rights reserved.
*
* embedded brains GmbH
* Dornierstr. 4
@@ -197,6 +197,12 @@ _start:
isync
#endif
+#ifdef QORIQ_INITIAL_HID0
+ /* HID0 initialization */
+ LWI r0, QORIQ_INITIAL_HID0
+ mtspr HID0, r0
+#endif
+
/* Invalidate TLS anchor */
li r2, 0