summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/powerpc/mvme5500
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2005-01-26 12:27:14 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2005-01-26 12:27:14 +0000
commit234e509f853d2369c8c422e5f07bd05adc5af817 (patch)
treef3d724a0992a0618a7d3043e8cfc88895d9f3fcb /c/src/lib/libbsp/powerpc/mvme5500
parent2005-01-24 Ralf Corsepius <ralf.corsepius@rtems.org> (diff)
downloadrtems-234e509f853d2369c8c422e5f07bd05adc5af817.tar.bz2
2005-01-26 Joel Sherrill <joel@OARcorp.com>
* irq/irq.c, startup/bspstart.c: Now compiles with gcc 4.x.
Diffstat (limited to 'c/src/lib/libbsp/powerpc/mvme5500')
-rw-r--r--c/src/lib/libbsp/powerpc/mvme5500/ChangeLog4
-rw-r--r--c/src/lib/libbsp/powerpc/mvme5500/irq/irq.c3
-rw-r--r--c/src/lib/libbsp/powerpc/mvme5500/startup/bspstart.c14
3 files changed, 15 insertions, 6 deletions
diff --git a/c/src/lib/libbsp/powerpc/mvme5500/ChangeLog b/c/src/lib/libbsp/powerpc/mvme5500/ChangeLog
index 8bc5d581e3..92ec99de8c 100644
--- a/c/src/lib/libbsp/powerpc/mvme5500/ChangeLog
+++ b/c/src/lib/libbsp/powerpc/mvme5500/ChangeLog
@@ -1,3 +1,7 @@
+2005-01-26 Joel Sherrill <joel@OARcorp.com>
+
+ * irq/irq.c, startup/bspstart.c: Now compiles with gcc 4.x.
+
2005-01-22 Ralf Corsepius <ralf.corsepius@rtems.org>
* tod/todcfg.c: size_t RTC_Count.
diff --git a/c/src/lib/libbsp/powerpc/mvme5500/irq/irq.c b/c/src/lib/libbsp/powerpc/mvme5500/irq/irq.c
index 672056a71f..3a97d49925 100644
--- a/c/src/lib/libbsp/powerpc/mvme5500/irq/irq.c
+++ b/c/src/lib/libbsp/powerpc/mvme5500/irq/irq.c
@@ -445,7 +445,8 @@ void C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
{
register unsigned msr;
register unsigned new_msr;
- register unsigned mainCause[2], selectCause;
+ unsigned mainCause[2];
+ register unsigned selectCause;
register unsigned oldMask[2]={0,0};
unsigned i, regNum, irq, bitNum, startIrqNum=0;
diff --git a/c/src/lib/libbsp/powerpc/mvme5500/startup/bspstart.c b/c/src/lib/libbsp/powerpc/mvme5500/startup/bspstart.c
index 4715e17d00..aa402365e6 100644
--- a/c/src/lib/libbsp/powerpc/mvme5500/startup/bspstart.c
+++ b/c/src/lib/libbsp/powerpc/mvme5500/startup/bspstart.c
@@ -339,7 +339,8 @@ void bsp_start( void )
#ifdef SHOW_LCR3_REGISTER
unsigned l3cr;
#endif
- register unsigned char* intrStack;
+ register uint32_t intrStack;
+ register uint32_t *intrStackPtr;
unsigned char *work_space_start;
ppc_cpu_id_t myCpu;
ppc_cpu_revision_t myCpuRevision;
@@ -388,15 +389,18 @@ void bsp_start( void )
* This could be done latter (e.g in IRQ_INIT) but it helps to understand
* some settings below...
*/
- intrStack = ((unsigned char*) __rtems_end) + INIT_STACK_SIZE + INTR_STACK_SIZE - CPU_MINIMUM_STACK_FRAME_SIZE;
+ intrStack = ((uint32_t) __rtems_end) +
+ INIT_STACK_SIZE + INTR_STACK_SIZE - CPU_MINIMUM_STACK_FRAME_SIZE;
/* make sure it's properly aligned */
- (uint32_t)intrStack &= ~(CPU_STACK_ALIGNMENT-1);
+ intrStack &= ~(CPU_STACK_ALIGNMENT-1);
/* tag the bottom (T. Straumann 6/36/2001 <strauman@slac.stanford.edu>) */
- *((uint32_t *)intrStack) = 0;
+ intrStackPtr = (uint32_t*) intrStack;
+ *intrStackPtr = 0;
+
+ _write_SPRG1(intrStack);
- _write_SPRG1((unsigned int)intrStack);
_write_SPRG0(PPC_BSP_HAS_FIXED_PR288);
/*