diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2000-01-13 20:45:07 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2000-01-13 20:45:07 +0000 |
commit | b8c98837559029b807fc80b54d170b2c3184df1f (patch) | |
tree | 8ebc7a418213c792f6f6bc0c46daff05d5b56c12 /c/src/lib/libbsp/m68k/ods68302/startup/bspstart.c | |
parent | POSIX message queues now include complete functionality including (diff) | |
download | rtems-b8c98837559029b807fc80b54d170b2c3184df1f.tar.bz2 |
All m68k BSPs now build with new ELF style linkcmds.
Diffstat (limited to 'c/src/lib/libbsp/m68k/ods68302/startup/bspstart.c')
-rw-r--r-- | c/src/lib/libbsp/m68k/ods68302/startup/bspstart.c | 43 |
1 files changed, 4 insertions, 39 deletions
diff --git a/c/src/lib/libbsp/m68k/ods68302/startup/bspstart.c b/c/src/lib/libbsp/m68k/ods68302/startup/bspstart.c index d752bb2cbe..c980c29e63 100644 --- a/c/src/lib/libbsp/m68k/ods68302/startup/bspstart.c +++ b/c/src/lib/libbsp/m68k/ods68302/startup/bspstart.c @@ -40,38 +40,9 @@ char *rtems_progname; void bsp_postdriver_hook(void); void bsp_libc_init( void *, unsigned32, int ); +void bsp_pretasking_hook(void); /* m68k version */ /* - * Function: bsp_pretasking_hook - * Created: 95/03/10 - * - * Description: - * BSP pretasking hook. Called just before drivers are initialized. - * Used to setup libc and install any BSP extensions. - * - * NOTES: - * Must not use libc (to do io) from here, since drivers are - * not yet initialized. - * - */ - -void bsp_pretasking_hook(void) -{ - extern int end; - rtems_unsigned32 heap_start; - - heap_start = (rtems_unsigned32) &end; - if (heap_start & (CPU_ALIGNMENT-1)) - heap_start = (heap_start + CPU_ALIGNMENT) & ~(CPU_ALIGNMENT-1); - - bsp_libc_init((void *) heap_start, 64 * 1024, 0); - -#ifdef RTEMS_DEBUG - rtems_debug_enable( RTEMS_DEBUG_ALL_MASK ); -#endif -} - -/* * bsp_start * * This routine does the bulk of the system initialization. @@ -79,13 +50,8 @@ void bsp_pretasking_hook(void) void bsp_start( void ) { - /* - * Allocate the memory for the RTEMS Work Space. This can come from - * a variety of places: hard coded address, malloc'ed from outside - * RTEMS world (e.g. simulator or primitive memory manager), or (as - * typically done by stock BSPs) by subtracting the required amount - * of work space from the last physical address on the CPU board. - */ + extern void *_WorkspaceBase; + #if 0 Cpu_table.interrupt_vector_table = (mc68000_isr *) 0/*&M68Kvec*/; #endif @@ -96,8 +62,7 @@ void bsp_start( void ) * not malloc'ed. It is just "pulled from the air". */ - BSP_Configuration.work_space_start = (void *) - (RAM_END - BSP_Configuration.work_space_size); + BSP_Configuration.work_space_start = (void *) &_WorkspaceBase; /* * initialize the CPU table for this BSP |