summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTill Straumann <strauman@slac.stanford.edu>2005-11-09 03:20:13 +0000
committerTill Straumann <strauman@slac.stanford.edu>2005-11-09 03:20:13 +0000
commitdad43ef2eb0c892c38795f30751cc7ffa5c1424f (patch)
tree0159a1ce23b6b0b08684bb30e31e50e6532852ad
parent2005-11-08 Till Straumann <strauman@slac.stanford.edu> (diff)
downloadrtems-dad43ef2eb0c892c38795f30751cc7ffa5c1424f.tar.bz2
2005-11-08 Till Straumann <strauman@slac.stanford.edu>
PR 845/bsps * startup/bspstart.c, start/start.S: setup BATs prior to attempting any device access - missing BAT mappings were probably the reason for the MMU malfunction assumption. Enabled MSR_DR.
-rw-r--r--c/src/lib/libbsp/powerpc/shared/ChangeLog14
-rw-r--r--c/src/lib/libbsp/powerpc/shared/start/start.S4
-rw-r--r--c/src/lib/libbsp/powerpc/shared/startup/bspstart.c48
3 files changed, 35 insertions, 31 deletions
diff --git a/c/src/lib/libbsp/powerpc/shared/ChangeLog b/c/src/lib/libbsp/powerpc/shared/ChangeLog
index c7cfeb4dec..dbc465741b 100644
--- a/c/src/lib/libbsp/powerpc/shared/ChangeLog
+++ b/c/src/lib/libbsp/powerpc/shared/ChangeLog
@@ -1,9 +1,17 @@
2005-11-08 Till Straumann <strauman@slac.stanford.edu>
+ PR 845/bsps
+ * startup/bspstart.c, start/start.S: setup BATs prior to attempting any
+ device access - missing BAT mappings were probably the reason for the
+ MMU malfunction assumption. Enabled MSR_DR.
+
+2005-11-08 Till Straumann <strauman@slac.stanford.edu>
+
PR 837/bsps
- make sure exceptions_in_RAM flag is set prior to initializing exception
- handling. Keep MCP disabled for memory probes :-( (the raven would
- otherwise fault on PCI config space access to empty slots).
+ * startup/bspstart.c, pci/detect_raven_bridge.c: make sure exceptions_in_RAM
+ flag is set prior to initializing exception handling. Keep MCP disabled for
+ memory probes :-( (the raven would otherwise fault on PCI config space access
+ to empty slots).
2005-11-07 Till Straumann <strauman@slac.stanford.edu>
diff --git a/c/src/lib/libbsp/powerpc/shared/start/start.S b/c/src/lib/libbsp/powerpc/shared/start/start.S
index d9be4f86b8..6ff5b33c7c 100644
--- a/c/src/lib/libbsp/powerpc/shared/start/start.S
+++ b/c/src/lib/libbsp/powerpc/shared/start/start.S
@@ -131,10 +131,6 @@ enter_C_code:
MMUon:
mfmsr r0
ori r0,r0, MSR_IP | MSR_RI | MSR_IR | MSR_DR | MSR_EE | MSR_FE0 | MSR_FE1 | MSR_FP
-#if defined(mvme2100)
- /* Data addr translation is broken for the mvme2100, disable it here */
- xori r0,r0, MSR_DR
-#endif
#if (PPC_HAS_FPU == 0)
xori r0, r0, MSR_EE | MSR_IP | MSR_FP
#else
diff --git a/c/src/lib/libbsp/powerpc/shared/startup/bspstart.c b/c/src/lib/libbsp/powerpc/shared/startup/bspstart.c
index 5b5b3c15a6..a6be69a451 100644
--- a/c/src/lib/libbsp/powerpc/shared/startup/bspstart.c
+++ b/c/src/lib/libbsp/powerpc/shared/startup/bspstart.c
@@ -262,9 +262,32 @@ void bsp_start( void )
myCpu = get_ppc_cpu_type();
myCpuRevision = get_ppc_cpu_revision();
+ /*
+ * Init MMU block address translation to enable hardware access
+ */
+
+#if !defined(mvme2100)
+ /*
+ * PC legacy IO space used for inb/outb and all PC compatible hardware
+ */
+ setdbat(1, _IO_BASE, _IO_BASE, 0x10000000, IO_PAGE);
+#endif
+
+ /*
+ * PCI devices memory area. Needed to access OpenPIC features
+ * provided by the Raven
+ *
+ * T. Straumann: give more PCI address space
+ */
+ setdbat(2, PCI_MEM_BASE, PCI_MEM_BASE, 0x10000000, IO_PAGE);
+
+ /*
+ * Must have access to OpenPIC PCI ACK registers provided by the Raven
+ */
+ setdbat(3, 0xf0000000, 0xf0000000, 0x10000000, IO_PAGE);
+
#if defined(mvme2100)
EUMBBAR = get_eumbbar();
- { unsigned v = 0x3000 ; _CPU_MSR_SET(v); }
#endif
/*
@@ -323,29 +346,6 @@ void bsp_start( void )
*/
initialize_exceptions();
- /*
- * Init MMU block address translation to enable hardware access
- */
-#if !defined(mvme2100)
- /*
- * PC legacy IO space used for inb/outb and all PC compatible hardware
- */
- setdbat(1, _IO_BASE, _IO_BASE, 0x10000000, IO_PAGE);
-#endif
-
- /*
- * PCI devices memory area. Needed to access OpenPIC features
- * provided by the Raven
- *
- * T. Straumann: give more PCI address space
- */
- setdbat(2, PCI_MEM_BASE, PCI_MEM_BASE, 0x10000000, IO_PAGE);
-
- /*
- * Must have access to OpenPIC PCI ACK registers provided by the Raven
- */
- setdbat(3, 0xf0000000, 0xf0000000, 0x10000000, IO_PAGE);
-
select_console(CONSOLE_LOG);
/*