summaryrefslogtreecommitdiffstats
path: root/c
diff options
context:
space:
mode:
authorTill Straumann <strauman@slac.stanford.edu>2005-11-09 02:44:16 +0000
committerTill Straumann <strauman@slac.stanford.edu>2005-11-09 02:44:16 +0000
commit165527795fc2e892d3f5e7386563b64f7d8f9560 (patch)
treee935e454b36cbe020687b15d864a01b107bee47e /c
parent2005-11-08 Till Straumann <strauman@slac.stanford.edu> (diff)
downloadrtems-165527795fc2e892d3f5e7386563b64f7d8f9560.tar.bz2
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).
Diffstat (limited to 'c')
-rw-r--r--c/src/lib/libbsp/powerpc/shared/ChangeLog7
-rw-r--r--c/src/lib/libbsp/powerpc/shared/pci/detect_raven_bridge.c2
-rw-r--r--c/src/lib/libbsp/powerpc/shared/startup/bspstart.c5
3 files changed, 11 insertions, 3 deletions
diff --git a/c/src/lib/libbsp/powerpc/shared/ChangeLog b/c/src/lib/libbsp/powerpc/shared/ChangeLog
index 1581e34ecb..c7cfeb4dec 100644
--- a/c/src/lib/libbsp/powerpc/shared/ChangeLog
+++ b/c/src/lib/libbsp/powerpc/shared/ChangeLog
@@ -1,3 +1,10 @@
+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).
+
2005-11-07 Till Straumann <strauman@slac.stanford.edu>
PR 834/bsps
diff --git a/c/src/lib/libbsp/powerpc/shared/pci/detect_raven_bridge.c b/c/src/lib/libbsp/powerpc/shared/pci/detect_raven_bridge.c
index 405e3dd2e1..c98e18ceeb 100644
--- a/c/src/lib/libbsp/powerpc/shared/pci/detect_raven_bridge.c
+++ b/c/src/lib/libbsp/powerpc/shared/pci/detect_raven_bridge.c
@@ -42,6 +42,8 @@ unsigned merst;
out_be32(RAVEN_MPIC_MERST, merst);
if (enableMCP) {
+ /* disallow MCP for now; (pci config access to empty slot faults :-() */
+ return -1;
if (!quiet)
printk("Enabling MCP generation on hostbridge errors\n");
out_be32(RAVEN_MPIC_MEREN, MEREN_VAL);
diff --git a/c/src/lib/libbsp/powerpc/shared/startup/bspstart.c b/c/src/lib/libbsp/powerpc/shared/startup/bspstart.c
index 444522f4ae..5b5b3c15a6 100644
--- a/c/src/lib/libbsp/powerpc/shared/startup/bspstart.c
+++ b/c/src/lib/libbsp/powerpc/shared/startup/bspstart.c
@@ -264,8 +264,6 @@ void bsp_start( void )
#if defined(mvme2100)
EUMBBAR = get_eumbbar();
-
- Cpu_table.exceptions_in_RAM = TRUE;
{ unsigned v = 0x3000 ; _CPU_MSR_SET(v); }
#endif
@@ -318,6 +316,8 @@ void bsp_start( void )
/* signal them that we have fixed PR288 - eventually, this should go away */
_write_SPRG0(PPC_BSP_HAS_FIXED_PR288);
+ /* initialize_exceptions() evaluates the exceptions_in_RAM flag */
+ Cpu_table.exceptions_in_RAM = TRUE;
/*
* Initialize default raw exception handlers. See vectors/vectors_init.c
*/
@@ -467,7 +467,6 @@ void bsp_start( void )
Cpu_table.do_zero_of_workspace = TRUE;
Cpu_table.interrupt_stack_size = CONFIGURE_INTERRUPT_STACK_MEMORY;
Cpu_table.clicks_per_usec = BSP_processor_frequency/(BSP_time_base_divisor * 1000);
- Cpu_table.exceptions_in_RAM = TRUE;
#ifdef SHOW_MORE_INIT_SETTINGS
printk("BSP_Configuration.work_space_size = %x\n",