From 3652ad356bf13abe0963c992cbbda96476d31609 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Tue, 19 Sep 1995 14:53:29 +0000 Subject: Minor bug fixes to get all targets compilable and running. The single biggest changes were the expansion of the workspace size macro to include other types of objects and the increase in the minimum stack size for most CPUs. --- c/src/lib/libbsp/m68k/idp/console/console.c | 4 ++- c/src/lib/libbsp/m68k/idp/startup/bspstart.c | 37 +++++++++++++++++++++++----- 2 files changed, 34 insertions(+), 7 deletions(-) (limited to 'c/src/lib/libbsp/m68k/idp') diff --git a/c/src/lib/libbsp/m68k/idp/console/console.c b/c/src/lib/libbsp/m68k/idp/console/console.c index 5540d26fcd..cd64e27e84 100644 --- a/c/src/lib/libbsp/m68k/idp/console/console.c +++ b/c/src/lib/libbsp/m68k/idp/console/console.c @@ -265,7 +265,9 @@ rtems_device_driver console_write( } outbyte( buffer[ count ], minor ); } - return maximum; + + rw_args->bytes_moved = maximum; + return 0; } /* diff --git a/c/src/lib/libbsp/m68k/idp/startup/bspstart.c b/c/src/lib/libbsp/m68k/idp/startup/bspstart.c index 233449282e..b4f4928f7d 100644 --- a/c/src/lib/libbsp/m68k/idp/startup/bspstart.c +++ b/c/src/lib/libbsp/m68k/idp/startup/bspstart.c @@ -83,14 +83,39 @@ void bsp_libc_init() libc_init(1); /* reentrant if possible */ else libc_init(0); /* non-reentrant */ +} + +/* + * 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) +{ + bsp_libc_init(); +#ifdef STACK_CHECKER_ON /* * Initialize the stack bounds checker + * We can either turn it on here or from the app. */ -#ifdef STACK_CHECKER_ON Stack_check_Initialize(); #endif + +#ifdef RTEMS_DEBUG + rtems_debug_enable( RTEMS_DEBUG_ALL_MASK ); +#endif } @@ -166,12 +191,12 @@ int main( * we only use a hook to get the C library initialized. */ - Cpu_table.pretasking_hook = NULL; - - Cpu_table.predriver_hook = bsp_libc_init; /* RTEMS resources available */ - + Cpu_table.pretasking_hook = bsp_pretasking_hook; /* init libc, etc. */ + + Cpu_table.predriver_hook = NULL; + Cpu_table.postdriver_hook = bsp_postdriver_hook; - + Cpu_table.idle_task = NULL; /* do not override system IDLE task */ Cpu_table.do_zero_of_workspace = TRUE; -- cgit v1.2.3