summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2012-11-21 09:46:58 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2012-12-03 13:17:11 +0100
commitc6d35ad46b423e12c80b2616b5898357dcd0b835 (patch)
tree68aa150726c654413bc5cc2a9558c9f821a58b85
parentbsp/mpc55xx: Set PPC_EXC_CONFIG_BOOKE_ONLY (diff)
downloadrtems-c6d35ad46b423e12c80b2616b5898357dcd0b835.tar.bz2
bsp/mpc55xx: Errata e4396 for e200z7
-rw-r--r--c/src/lib/libbsp/powerpc/mpc55xxevb/startup/start.S12
1 files changed, 10 insertions, 2 deletions
diff --git a/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/start.S b/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/start.S
index 77c9d845a6..e8ae3c0db4 100644
--- a/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/start.S
+++ b/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/start.S
@@ -170,9 +170,17 @@ _start:
ori r3, r3, 0x4000
mtspr HID0, r3
- /* Enable branch prediction */
- LWI r3, FSL_EIS_BUCSR_BBFI | FSL_EIS_BUCSR_BPEN
+ /*
+ * Enable branch prediction.
+ *
+ * Errata e4396: e200z7: Erroneous Address Fetch
+ *
+ * The propose workaround does not work.
+ */
+#if MPC55XX_CHIP_FAMILY != 567
+ LWI r3, FSL_EIS_BUCSR_BBFI | FSL_EIS_BUCSR_BALLOC_ALL | FSL_EIS_BUCSR_BPRED_NOT_TAKEN | FSL_EIS_BUCSR_BPEN
mtspr FSL_EIS_BUCSR, r3
+#endif
#endif /* MPC55XX_NEEDS_LOW_LEVEL_INIT */