summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/powerpc/mpc55xxevb/startup
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2010-12-29 10:54:57 +0000
committerSebastian Huber <sebastian.huber@embedded-brains.de>2010-12-29 10:54:57 +0000
commit617517656222c59a8e3c28ec9564c02891f522f2 (patch)
tree08ad030aed496bc6a821bf483dda1a32727adaa7 /c/src/lib/libbsp/powerpc/mpc55xxevb/startup
parent2010-12-29 Sebastian Huber <sebastian.huber@embedded-brains.de> (diff)
downloadrtems-617517656222c59a8e3c28ec9564c02891f522f2.tar.bz2
2010-12-29 Sebastian Huber <sebastian.huber@embedded-brains.de>
* Makefile.am, preinstall.am, startup/start.S: Use standard zero function. * startup/linkcmds.base: Reserve enough space for the exception minimum prologues. Changed start section name. * startup/bspstart.c: Removed superfluous cache initialization. * configure.ac: Fixed option default values.
Diffstat (limited to 'c/src/lib/libbsp/powerpc/mpc55xxevb/startup')
-rw-r--r--c/src/lib/libbsp/powerpc/mpc55xxevb/startup/bspstart.c10
-rw-r--r--c/src/lib/libbsp/powerpc/mpc55xxevb/startup/linkcmds.base5
-rw-r--r--c/src/lib/libbsp/powerpc/mpc55xxevb/startup/start.S24
3 files changed, 6 insertions, 33 deletions
diff --git a/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/bspstart.c b/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/bspstart.c
index 417a3da969..fc2cae6211 100644
--- a/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/bspstart.c
+++ b/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/bspstart.c
@@ -646,14 +646,4 @@ void bsp_start(void)
/* Initialize eMIOS */
mpc55xx_emios_initialize( MPC55XX_EMIOS_PRESCALER);
-
- /*
- * Enable instruction and data caches. Do not force writethrough mode.
- */
-#if INSTRUCTION_CACHE_ENABLE
- rtems_cache_enable_instruction();
-#endif
-#if DATA_CACHE_ENABLE
- rtems_cache_enable_data();
-#endif
}
diff --git a/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/linkcmds.base b/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/linkcmds.base
index cb5b9c3622..87f4313323 100644
--- a/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/linkcmds.base
+++ b/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/linkcmds.base
@@ -19,7 +19,8 @@ SECTIONS
/*
* BSP: System startup entry
*/
- KEEP (*(.entry))
+ KEEP (*(.bsp_start_text))
+ KEEP (*(.bsp_start_data))
/*
* BSP: Moved into .text from .init
@@ -98,7 +99,7 @@ SECTIONS
/*
* BSP: Reserve space for exception handler
*/
- . = . + 0x230;
+ . = . + 0x130;
. = ALIGN (bsp_section_align);
} > REGION_VECTORS
diff --git a/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/start.S b/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/start.S
index 9e6bf84093..ef920e61c6 100644
--- a/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/start.S
+++ b/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/start.S
@@ -28,7 +28,7 @@
#include <mpc55xx/reg-defs.h>
#include <bspopts.h>
-.section ".entry", "ax"
+.section ".bsp_start_text", "ax"
PUBLIC_VAR (start)
.globl fmpll_syncr_vals
bam_rchw:
@@ -127,28 +127,10 @@ start:
/* Addresses */
LA r3, bsp_ram_start
- LA r4, bsp_ram_end
-
- /* Assert: Proper alignment of destination start */
- andi. r6, r3, 0x3f
- bne twiddle
-
- /* Assert: Proper alignment of destination end */
- andi. r6, r4, 0x3f
- bne twiddle
-
- /* Data size = destination end - destination start */
- subf r4, r3, r4
-
- /* Save time */
- mftb r24
+ LA r4, bsp_ram_size
/* Zero */
- bl SYM (mpc55xx_zero_32)
-
- /* Save time and get time delta */
- mftb r25
- subf r24, r24, r25
+ bl SYM (bsp_start_zero)
/*
* Copy data