summaryrefslogtreecommitdiffstats
path: root/cpukit/score/cpu/powerpc
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2003-07-18 17:25:02 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2003-07-18 17:25:02 +0000
commit1ede24cc0142fadd041d60be2125cd51336c0e22 (patch)
tree60d16d64b30a245819c5ddeebf71122ff1640605 /cpukit/score/cpu/powerpc
parent2003-07-18 Till Straumann <strauman@slac.stanford.edu> (diff)
downloadrtems-1ede24cc0142fadd041d60be2125cd51336c0e22.tar.bz2
2003-07-18 Till Straumann <strauman@slac.stanford.edu>
PR 288/rtems * rtems/new-exceptions/cpu.h: _ISR_Nest_level is now properly maintained and does not reside in SPRG0.
Diffstat (limited to 'cpukit/score/cpu/powerpc')
-rw-r--r--cpukit/score/cpu/powerpc/ChangeLog6
-rw-r--r--cpukit/score/cpu/powerpc/rtems/new-exceptions/cpu.h15
2 files changed, 19 insertions, 2 deletions
diff --git a/cpukit/score/cpu/powerpc/ChangeLog b/cpukit/score/cpu/powerpc/ChangeLog
index 744e94d5f8..11f2780778 100644
--- a/cpukit/score/cpu/powerpc/ChangeLog
+++ b/cpukit/score/cpu/powerpc/ChangeLog
@@ -1,3 +1,9 @@
+2003-07-18 Till Straumann <strauman@slac.stanford.edu>
+
+ PR 288/rtems
+ * rtems/new-exceptions/cpu.h: _ISR_Nest_level is now properly
+ maintained and does not reside in SPRG0.
+
2003-03-06 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac: Remove AC_CONFIG_AUX_DIR.
diff --git a/cpukit/score/cpu/powerpc/rtems/new-exceptions/cpu.h b/cpukit/score/cpu/powerpc/rtems/new-exceptions/cpu.h
index bdb7ec8101..49348231bd 100644
--- a/cpukit/score/cpu/powerpc/rtems/new-exceptions/cpu.h
+++ b/cpukit/score/cpu/powerpc/rtems/new-exceptions/cpu.h
@@ -539,10 +539,12 @@ SCORE_EXTERN struct {
/*
* This is defined if the port has a special way to report the ISR nesting
- * level. Most ports maintain the variable _ISR_Nest_level.
+ * level. Most ports maintain the variable _ISR_Nest_level. Note that
+ * this is not an option - RTEMS/score _relies_ on _ISR_Nest_level
+ * being maintained (e.g. watchdog queues).
*/
-#define CPU_PROVIDES_ISR_IS_IN_PROGRESS TRUE
+#define CPU_PROVIDES_ISR_IS_IN_PROGRESS FALSE
/*
* Should be large enough to run all RTEMS tests. This insures
@@ -830,8 +832,17 @@ extern const unsigned32 _CPU_msrs[4];
* _CPU_Initialize
*
* This routine performs CPU dependent initialization.
+ *
+ * Until all new-exception processing BSPs have fixed
+ * PR288, we let the good BSPs pass
+ *
+ * PPC_BSP_HAS_FIXED_PR288
+ *
+ * in SPRG0 and let _CPU_Initialize assert this.
*/
+#define PPC_BSP_HAS_FIXED_PR288 0x600dbabe
+
void _CPU_Initialize(
rtems_cpu_table *cpu_table,
void (*thread_dispatch)