summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--c/src/lib/libbsp/m68k/mvme136/ChangeLog14
-rw-r--r--c/src/lib/libbsp/m68k/mvme136/Makefile.am3
-rw-r--r--c/src/lib/libbsp/m68k/mvme136/configure.ac2
-rw-r--r--c/src/lib/libbsp/m68k/mvme136/startup/bspstart.c15
4 files changed, 18 insertions, 16 deletions
diff --git a/c/src/lib/libbsp/m68k/mvme136/ChangeLog b/c/src/lib/libbsp/m68k/mvme136/ChangeLog
index 497ee3f544..8e59f54f72 100644
--- a/c/src/lib/libbsp/m68k/mvme136/ChangeLog
+++ b/c/src/lib/libbsp/m68k/mvme136/ChangeLog
@@ -1,3 +1,17 @@
+2008-05-15 Joel Sherrill <joel.sherrill@OARcorp.com>
+
+ * Makefile.am, configure.ac, startup/bspstart.c: Add capability for
+ bootcard.c BSP Initialization Framework to ask the BSP where it has
+ memory for the RTEMS Workspace and C Program Heap. These collectively
+ are referred to as work area. If the BSP supports this, then it does
+ not have to include code to split the available memory between the
+ two areas. This reduces the amount of code in the BSP specific
+ bspstart.c file. Additionally, the shared framework can dirty the
+ work area memory. Until most/all BSPs support this new capability, if
+ the BSP supports this, it should call
+ RTEMS_BSP_BOOTCARD_HANDLES_RAM_ALLOCATION from its configure.ac. When
+ the transition is complete, this autoconf macro can be removed.
+
2008-05-14 Joel Sherrill <joel.sherrill@OARcorp.com>
* Makefile.am: Rework to avoid .rel files.
diff --git a/c/src/lib/libbsp/m68k/mvme136/Makefile.am b/c/src/lib/libbsp/m68k/mvme136/Makefile.am
index ef5965f24f..4b612148dd 100644
--- a/c/src/lib/libbsp/m68k/mvme136/Makefile.am
+++ b/c/src/lib/libbsp/m68k/mvme136/Makefile.am
@@ -29,7 +29,8 @@ dist_project_lib_DATA += startup/linkcmds
startup_SOURCES = startup/bspclean.c ../../shared/bsplibc.c \
../../shared/bsppost.c ../../shared/bsppredriverhook.c \
startup/bspstart.c ../../shared/bootcard.c \
- ../../m68k/shared/m68kpretaskinghook.c \
+ ../../shared/bsppretaskinghook.c \
+ ../../m68k/shared/m68kbspgetworkarea.c \
../../shared/sbrk.c ../../m68k/shared/setvec.c
gnatsupp_SOURCES = ../../shared/gnatinstallhandler.c
clock_SOURCES = clock/ckinit.c
diff --git a/c/src/lib/libbsp/m68k/mvme136/configure.ac b/c/src/lib/libbsp/m68k/mvme136/configure.ac
index c6e4326ee7..2d8f12787d 100644
--- a/c/src/lib/libbsp/m68k/mvme136/configure.ac
+++ b/c/src/lib/libbsp/m68k/mvme136/configure.ac
@@ -15,6 +15,8 @@ RTEMS_PROG_CC_FOR_TARGET([-ansi -fasm])
RTEMS_CANONICALIZE_TOOLS
RTEMS_PROG_CCAS
+RTEMS_BSP_BOOTCARD_HANDLES_RAM_ALLOCATION
+
# Explicitly list all Makefiles here
AC_CONFIG_FILES([Makefile])
AC_OUTPUT
diff --git a/c/src/lib/libbsp/m68k/mvme136/startup/bspstart.c b/c/src/lib/libbsp/m68k/mvme136/startup/bspstart.c
index 24b20a4934..3af97ee2ec 100644
--- a/c/src/lib/libbsp/m68k/mvme136/startup/bspstart.c
+++ b/c/src/lib/libbsp/m68k/mvme136/startup/bspstart.c
@@ -22,27 +22,14 @@
#include <rtems/zilog/z8036.h>
/*
- * Use the shared implementations of the following routines
- */
-
-void bsp_libc_init( void *, uint32_t, int );
-void bsp_pretasking_hook(void); /* m68k version */
-
-/*
* bsp_start
*
* This routine does the bulk of the system initialization.
*/
-
void bsp_start( void )
{
m68k_isr_entry *monitors_vector_table;
int index;
- extern void *_WorkspaceBase;
- extern void *_RamSize;
- extern unsigned long _M68k_Ramsize;
-
- _M68k_Ramsize = (unsigned long)&_RamSize;
monitors_vector_table = (m68k_isr_entry *)0; /* 135Bug Vectors are at 0 */
m68k_set_vbr( monitors_vector_table );
@@ -60,6 +47,4 @@ void bsp_start( void )
(*(uint8_t*)0xfffb0067) = 0x7f; /* make VME access round-robin */
rtems_cache_enable_instruction();
-
- Configuration.work_space_start = (void *) &_WorkspaceBase;
}