summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTill Straumann <strauman@slac.stanford.edu>2009-03-05 21:17:55 +0000
committerTill Straumann <strauman@slac.stanford.edu>2009-03-05 21:17:55 +0000
commit05b0c8a6dd3e9e35623934d33f5b6fba891a4258 (patch)
tree1555cdda67aa6229405f217d2cfe4f12f2d97c36
parent2009-03-05 Till Straumann <strauman@slac.stanford.edu> (diff)
downloadrtems-05b0c8a6dd3e9e35623934d33f5b6fba891a4258.tar.bz2
2009-03-05 Till Straumann <strauman@slac.stanford.edu>
* include/bsp.h, start/start.S, startup/bspstart.c: removed BSP_INIT_STACK_SIZE -- this BSP now also uses __stack defined by the linker script for the initial stack. Removed legacy code (inherited from old mvme2307 BSP but not relevant to this one) that tested trapping into PPCBug.
-rw-r--r--c/src/lib/libbsp/powerpc/mvme3100/ChangeLog10
-rw-r--r--c/src/lib/libbsp/powerpc/mvme3100/include/bsp.h5
-rw-r--r--c/src/lib/libbsp/powerpc/mvme3100/start/start.S7
-rw-r--r--c/src/lib/libbsp/powerpc/mvme3100/startup/bspstart.c31
4 files changed, 13 insertions, 40 deletions
diff --git a/c/src/lib/libbsp/powerpc/mvme3100/ChangeLog b/c/src/lib/libbsp/powerpc/mvme3100/ChangeLog
index 40b2ffe6ca..afdd8d364c 100644
--- a/c/src/lib/libbsp/powerpc/mvme3100/ChangeLog
+++ b/c/src/lib/libbsp/powerpc/mvme3100/ChangeLog
@@ -1,5 +1,15 @@
2009-03-05 Till Straumann <strauman@slac.stanford.edu>
+ * include/bsp.h, start/start.S, startup/bspstart.c:
+ removed BSP_INIT_STACK_SIZE -- this BSP now also uses
+ __stack defined by the linker script for the initial
+ stack.
+ Removed legacy code (inherited from old mvme2307 BSP
+ but not relevant to this one) that tested trapping
+ into PPCBug.
+
+2009-03-05 Till Straumann <strauman@slac.stanford.edu>
+
* startup/misc.c, flash/flashcfg.c, irq/irq_init.c,
pci/detect_host_bridge.c: changed function arguments
to silence compiler warnings.
diff --git a/c/src/lib/libbsp/powerpc/mvme3100/include/bsp.h b/c/src/lib/libbsp/powerpc/mvme3100/include/bsp.h
index 82e1d49762..4b7879f82c 100644
--- a/c/src/lib/libbsp/powerpc/mvme3100/include/bsp.h
+++ b/c/src/lib/libbsp/powerpc/mvme3100/include/bsp.h
@@ -318,11 +318,6 @@ rtems_tsec_attach(struct rtems_bsdnet_ifconfig *ifcfg, int attaching);
#define RTEMS_BSP_NETWORK_DRIVER_NAME "tse1"
#define RTEMS_BSP_NETWORK_DRIVER_ATTACH rtems_tsec_attach
-/*
- * system init stack and soft ir stack size
- */
-#define BSP_INIT_STACK_SIZE 0x1000
-
#ifdef __cplusplus
}
#endif
diff --git a/c/src/lib/libbsp/powerpc/mvme3100/start/start.S b/c/src/lib/libbsp/powerpc/mvme3100/start/start.S
index 485a00483d..147d4e270b 100644
--- a/c/src/lib/libbsp/powerpc/mvme3100/start/start.S
+++ b/c/src/lib/libbsp/powerpc/mvme3100/start/start.S
@@ -73,11 +73,8 @@ __rtems_entry_point:
mr r6,r28
mr r7,r27
bl save_boot_params
- /*
- * stack = &__rtems_end + 4096
- */
- addis r9,r0, __rtems_end+(4096-PPC_MINIMUM_STACK_FRAME_SIZE)@ha
- addi r9,r9, __rtems_end+(4096-PPC_MINIMUM_STACK_FRAME_SIZE)@l
+ addis r9,r0, (__stack-PPC_MINIMUM_STACK_FRAME_SIZE)@ha
+ addi r9,r9, (__stack-PPC_MINIMUM_STACK_FRAME_SIZE)@l
/* align down to 16-bytes */
li r5, (CPU_STACK_ALIGNMENT - 1)
andc r1, r9, r5
diff --git a/c/src/lib/libbsp/powerpc/mvme3100/startup/bspstart.c b/c/src/lib/libbsp/powerpc/mvme3100/startup/bspstart.c
index 60f59a1bf0..a6e8f9ad29 100644
--- a/c/src/lib/libbsp/powerpc/mvme3100/startup/bspstart.c
+++ b/c/src/lib/libbsp/powerpc/mvme3100/startup/bspstart.c
@@ -50,8 +50,6 @@
extern unsigned long __rtems_end[];
extern void BSP_vme_config(void);
-SPR_RW(SPRG1)
-
/*
* Copy Additional boot param passed by boot loader
*/
@@ -263,10 +261,6 @@ VpdBufRec vpdData [] = {
* so that It can be printed without accessing R1.
*/
asm volatile("mr %0, 1":"=r"(stack));
-#if 0
- stack = ((unsigned char*) __rtems_end) +
- INIT_STACK_SIZE - PPC_MINIMUM_STACK_FRAME_SIZE;
-#endif
/* tag the bottom */
*((uint32_t*)stack) = 0;
@@ -274,7 +268,7 @@ VpdBufRec vpdData [] = {
/*
* Initialize the interrupt related settings.
*/
- intrStackStart = (uint32_t) __rtems_end + BSP_INIT_STACK_SIZE;
+ intrStackStart = (uint32_t) __rtems_end;
intrStackSize = rtems_configuration_get_interrupt_stack_size();
/*
@@ -375,29 +369,6 @@ VpdBufRec vpdData [] = {
}
#endif
-#ifdef TEST_RAW_EXCEPTION_CODE
- printk("Testing exception handling Part 1\n");
- /*
- * Cause a software exception
- */
- __asm__ __volatile ("sc");
- /*
- * Check we can still catch exceptions and return coorectly.
- */
- printk("Testing exception handling Part 2\n");
- __asm__ __volatile ("sc");
-
- /*
- * Somehow doing the above seems to clobber SPRG0 on the mvme2100. The
- * interrupt disable mask is stored in SPRG0. Is this a problem?
- */
- ppc_interrupt_set_disable_mask( PPC_INTERRUPT_DISABLE_MASK_DEFAULT);
-
-#endif
-
-/* See above */
-#warning The interrupt disable mask is now stored in SPRG0, please verify that this is compatible to this BSP (see also bootcard.c).
-
if ( (chpt = strstr(BSP_commandline_string,"MEMSZ=")) ) {
char *endp;
uint32_t sz;