diff options
Diffstat (limited to 'c/src/lib/libbsp/m68k')
34 files changed, 66 insertions, 235 deletions
diff --git a/c/src/lib/libbsp/m68k/dmv152/startup/Makefile.in b/c/src/lib/libbsp/m68k/dmv152/startup/Makefile.in index 6f35d68576..4e05da9431 100644 --- a/c/src/lib/libbsp/m68k/dmv152/startup/Makefile.in +++ b/c/src/lib/libbsp/m68k/dmv152/startup/Makefile.in @@ -11,7 +11,7 @@ PROJECT_ROOT = @PROJECT_ROOT@ PGM=${ARCH}/startup.rel # C source names, if any, go here -- minus the .c -C_PIECES=bspstart sbrk setvec vmeintr +C_PIECES=bspclean bspstart main sbrk setvec vmeintr C_FILES=$(C_PIECES:%=%.c) C_O_FILES=$(C_PIECES:%=${ARCH}/%.o) diff --git a/c/src/lib/libbsp/m68k/dmv152/startup/bspclean.c b/c/src/lib/libbsp/m68k/dmv152/startup/bspclean.c new file mode 100644 index 0000000000..ef69a6f8f3 --- /dev/null +++ b/c/src/lib/libbsp/m68k/dmv152/startup/bspclean.c @@ -0,0 +1,21 @@ +/* + * This routine performs final cleanup at exit time. + * + * COPYRIGHT (c) 1989-1998. + * On-Line Applications Research Corporation (OAR). + * Copyright assigned to U.S. Government, 1994. + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.OARcorp.com/rtems/license.html. + * + * $Id$ + */ + +#include <bsp.h> + +void bsp_cleanup( void ) +{ + + VME_interrupt_Disable( 0xff ); +} diff --git a/c/src/lib/libbsp/m68k/dmv152/startup/bspstart.c b/c/src/lib/libbsp/m68k/dmv152/startup/bspstart.c index 02b5e9bd8a..be1edde6fe 100644 --- a/c/src/lib/libbsp/m68k/dmv152/startup/bspstart.c +++ b/c/src/lib/libbsp/m68k/dmv152/startup/bspstart.c @@ -139,21 +139,12 @@ bsp_postdriver_hook(void) rtems_fatal_error_occurred( error_code | 'I' << 8 | 'O' ); } -int main( - int argc, - char **argv, - char **environp -) +void bsp_start( void ) { m68k_isr_entry *monitors_vector_table; int index; void *vbr; - if ((argc > 0) && argv && argv[0]) - rtems_progname = argv[0]; - else - rtems_progname = "RTEMS"; - monitors_vector_table = (m68k_isr_entry *)0; /* Monitor Vectors are at 0 */ m68k_set_vbr( monitors_vector_table ); @@ -246,13 +237,5 @@ int main( rtems_libio_config(&BSP_Configuration, BSP_LIBIO_MAX_FDS); - rtems_initialize_executive( &BSP_Configuration, &Cpu_table ); - /* does not return */ - /* Clock_exit is done as an atexit() function */ - - VME_interrupt_Disable( 0xff ); - - /* return like a "normal" subroutine to the monitor */ - return 0; } diff --git a/c/src/lib/libbsp/m68k/efi332/start/start.c b/c/src/lib/libbsp/m68k/efi332/start/start.c index bd3a6cce06..914b3f5802 100644 --- a/c/src/lib/libbsp/m68k/efi332/start/start.c +++ b/c/src/lib/libbsp/m68k/efi332/start/start.c @@ -12,8 +12,6 @@ m68k_isr_entry vectors[256]; char * const __argv[]= {"main", ""}; char * const __env[]= {""}; -int main(const int argc, char * const argv[], char * const env[]); - /* * This prototype really should have the noreturn attribute but * that causes a warning since it appears that the routine does @@ -182,7 +180,9 @@ void dumby_start() { /* * Execute main with arguments argv and environment env */ - main(1, __argv, __env); + /* main(1, __argv, __env); */ + + boot_card(); reboot(); } diff --git a/c/src/lib/libbsp/m68k/efi332/start332/start332.c b/c/src/lib/libbsp/m68k/efi332/start332/start332.c index bd3a6cce06..914b3f5802 100644 --- a/c/src/lib/libbsp/m68k/efi332/start332/start332.c +++ b/c/src/lib/libbsp/m68k/efi332/start332/start332.c @@ -12,8 +12,6 @@ m68k_isr_entry vectors[256]; char * const __argv[]= {"main", ""}; char * const __env[]= {""}; -int main(const int argc, char * const argv[], char * const env[]); - /* * This prototype really should have the noreturn attribute but * that causes a warning since it appears that the routine does @@ -182,7 +180,9 @@ void dumby_start() { /* * Execute main with arguments argv and environment env */ - main(1, __argv, __env); + /* main(1, __argv, __env); */ + + boot_card(); reboot(); } diff --git a/c/src/lib/libbsp/m68k/efi332/startup/Makefile.in b/c/src/lib/libbsp/m68k/efi332/startup/Makefile.in index f1d3bbcec9..6dd881b30c 100644 --- a/c/src/lib/libbsp/m68k/efi332/startup/Makefile.in +++ b/c/src/lib/libbsp/m68k/efi332/startup/Makefile.in @@ -11,7 +11,7 @@ PROJECT_ROOT = @PROJECT_ROOT@ PGM=${ARCH}/startup.rel # C source names, if any, go here -- minus the .c -C_PIECES=bspstart bspclean sbrk setvec +C_PIECES=bspstart bspclean main sbrk setvec C_FILES=$(C_PIECES:%=%.c) C_O_FILES=$(C_PIECES:%=${ARCH}/%.o) diff --git a/c/src/lib/libbsp/m68k/efi332/startup/bspstart.c b/c/src/lib/libbsp/m68k/efi332/startup/bspstart.c index d3e29a7ef7..b20bdd5ff1 100644 --- a/c/src/lib/libbsp/m68k/efi332/startup/bspstart.c +++ b/c/src/lib/libbsp/m68k/efi332/startup/bspstart.c @@ -147,11 +147,7 @@ bsp_postdriver_hook(void) rtems_fatal_error_occurred( error_code | 'I' << 8 | 'O' ); } -int main( - int argc, - char **argv, - char **environp -) +void bsp_start( void ) { void *vbr; @@ -213,15 +209,6 @@ int main( rtems_libio_config(&BSP_Configuration, BSP_LIBIO_MAX_FDS); - rtems_initialize_executive( &BSP_Configuration, &Cpu_table ); - /* does not return */ - /* Clock_exit is done as an atexit() function */ - - /* configure peripherals for safe exit */ - bsp_cleanup(); - - /* return like a "normal" subroutine to the monitor */ - return 0; } diff --git a/c/src/lib/libbsp/m68k/efi68k/start/start.c b/c/src/lib/libbsp/m68k/efi68k/start/start.c index eaf15df758..e044f5a6f4 100644 --- a/c/src/lib/libbsp/m68k/efi68k/start/start.c +++ b/c/src/lib/libbsp/m68k/efi68k/start/start.c @@ -11,8 +11,6 @@ m68k_isr_entry vectors[256]; char * const __argv[]= {"main", ""}; char * const __env[]= {""}; -int main(const int argc, char * const argv[], char * const env[]); - /* * This prototype really should have the noreturn attribute but * that causes a warning since it appears that the routine does @@ -65,7 +63,8 @@ void dumby_start() { /* * Execute main with arguments argv and environment env */ - main(1, __argv, __env); + /* main(1, __argv, __env); */ + boot_card(); reboot(); } diff --git a/c/src/lib/libbsp/m68k/efi68k/start68k/start68k.c b/c/src/lib/libbsp/m68k/efi68k/start68k/start68k.c index eaf15df758..e044f5a6f4 100644 --- a/c/src/lib/libbsp/m68k/efi68k/start68k/start68k.c +++ b/c/src/lib/libbsp/m68k/efi68k/start68k/start68k.c @@ -11,8 +11,6 @@ m68k_isr_entry vectors[256]; char * const __argv[]= {"main", ""}; char * const __env[]= {""}; -int main(const int argc, char * const argv[], char * const env[]); - /* * This prototype really should have the noreturn attribute but * that causes a warning since it appears that the routine does @@ -65,7 +63,8 @@ void dumby_start() { /* * Execute main with arguments argv and environment env */ - main(1, __argv, __env); + /* main(1, __argv, __env); */ + boot_card(); reboot(); } diff --git a/c/src/lib/libbsp/m68k/efi68k/startup/Makefile.in b/c/src/lib/libbsp/m68k/efi68k/startup/Makefile.in index 9fe7e342b2..0316a43525 100644 --- a/c/src/lib/libbsp/m68k/efi68k/startup/Makefile.in +++ b/c/src/lib/libbsp/m68k/efi68k/startup/Makefile.in @@ -11,7 +11,7 @@ PROJECT_ROOT = @PROJECT_ROOT@ PGM=${ARCH}/startup.rel # C source names, if any, go here -- minus the .c -C_PIECES=bspstart bspclean efi68k_tcp efi68k_wd sbrk setvec +C_PIECES=bspstart bspclean efi68k_tcp efi68k_wd main sbrk setvec C_FILES=$(C_PIECES:%=%.c) C_O_FILES=$(C_PIECES:%=${ARCH}/%.o) diff --git a/c/src/lib/libbsp/m68k/efi68k/startup/bspstart.c b/c/src/lib/libbsp/m68k/efi68k/startup/bspstart.c index 3ce563efd5..339c809e4f 100644 --- a/c/src/lib/libbsp/m68k/efi68k/startup/bspstart.c +++ b/c/src/lib/libbsp/m68k/efi68k/startup/bspstart.c @@ -152,11 +152,7 @@ bsp_postdriver_hook(void) rtems_fatal_error_occurred( error_code | 'I' << 8 | 'O' ); } -int main( - int argc, - char **argv, - char **environp -) +void bsp_start( void ) { void *vbr; @@ -221,16 +217,6 @@ int main( rtems_libio_config(&BSP_Configuration, BSP_LIBIO_MAX_FDS); - rtems_initialize_executive( &BSP_Configuration, &Cpu_table ); - /* does not return */ - /* Clock_exit is done as an atexit() function */ - -/* exit: */ - /* configure peripherals for safe exit */ - bsp_cleanup(); - - /* return like a "normal" subroutine to the monitor */ - return 0; } diff --git a/c/src/lib/libbsp/m68k/gen68302/start/start302.s b/c/src/lib/libbsp/m68k/gen68302/start/start302.s index 7367910472..2a7c652c87 100644 --- a/c/src/lib/libbsp/m68k/gen68302/start/start302.s +++ b/c/src/lib/libbsp/m68k/gen68302/start/start302.s @@ -216,7 +216,7 @@ loop: movel d0,a1@+ | to zero out uninitialized movel d0,a6 | set base pointer /* - * RTEMS should maintiain a separate interrupt stack on CPUs + * RTEMS should maintain a separate interrupt stack on CPUs * without one in hardware. This is currently not supported * on versions of the m68k without a HW intr stack. */ @@ -229,7 +229,7 @@ loop: movel d0,a1@+ | to zero out uninitialized move.l #0,a7@- | environp move.l #0,a7@- | argv move.l #0,a7@- | argc - jsr SYM (main) + jsr SYM (boot_card) nop Bad: bra Bad diff --git a/c/src/lib/libbsp/m68k/gen68302/start302/start302.s b/c/src/lib/libbsp/m68k/gen68302/start302/start302.s index 7367910472..2a7c652c87 100644 --- a/c/src/lib/libbsp/m68k/gen68302/start302/start302.s +++ b/c/src/lib/libbsp/m68k/gen68302/start302/start302.s @@ -216,7 +216,7 @@ loop: movel d0,a1@+ | to zero out uninitialized movel d0,a6 | set base pointer /* - * RTEMS should maintiain a separate interrupt stack on CPUs + * RTEMS should maintain a separate interrupt stack on CPUs * without one in hardware. This is currently not supported * on versions of the m68k without a HW intr stack. */ @@ -229,7 +229,7 @@ loop: movel d0,a1@+ | to zero out uninitialized move.l #0,a7@- | environp move.l #0,a7@- | argv move.l #0,a7@- | argc - jsr SYM (main) + jsr SYM (boot_card) nop Bad: bra Bad diff --git a/c/src/lib/libbsp/m68k/gen68302/startup/Makefile.in b/c/src/lib/libbsp/m68k/gen68302/startup/Makefile.in index f1d3bbcec9..d131f4a2ab 100644 --- a/c/src/lib/libbsp/m68k/gen68302/startup/Makefile.in +++ b/c/src/lib/libbsp/m68k/gen68302/startup/Makefile.in @@ -11,7 +11,7 @@ PROJECT_ROOT = @PROJECT_ROOT@ PGM=${ARCH}/startup.rel # C source names, if any, go here -- minus the .c -C_PIECES=bspstart bspclean sbrk setvec +C_PIECES=bspclean bspstart main sbrk setvec C_FILES=$(C_PIECES:%=%.c) C_O_FILES=$(C_PIECES:%=${ARCH}/%.o) diff --git a/c/src/lib/libbsp/m68k/gen68302/startup/bspstart.c b/c/src/lib/libbsp/m68k/gen68302/startup/bspstart.c index ebb1310340..6f42beb938 100644 --- a/c/src/lib/libbsp/m68k/gen68302/startup/bspstart.c +++ b/c/src/lib/libbsp/m68k/gen68302/startup/bspstart.c @@ -147,16 +147,8 @@ bsp_postdriver_hook(void) rtems_fatal_error_occurred( error_code | 'I' << 8 | 'O' ); } -int main( - int argc, - char **argv, - char **environp -) +void bsp_start( void ) { - if ((argc > 0) && argv && argv[0]) - rtems_progname = argv[0]; - else - rtems_progname = "RTEMS"; /* * Allocate the memory for the RTEMS Work Space. This can come from @@ -239,13 +231,4 @@ int main( * Don't forget the other CPU Table entries. */ - /* - * Start RTEMS - */ - - rtems_initialize_executive( &BSP_Configuration, &Cpu_table ); - - bsp_cleanup(); - - return 0; } diff --git a/c/src/lib/libbsp/m68k/gen68360/start/start360.s b/c/src/lib/libbsp/m68k/gen68360/start/start360.s index 7a7000fcb3..2ce6a1d80b 100644 --- a/c/src/lib/libbsp/m68k/gen68360/start/start360.s +++ b/c/src/lib/libbsp/m68k/gen68360/start/start360.s @@ -401,7 +401,7 @@ ZEROLOOPTEST: movel d0,a7@- | environp movel d0,a7@- | argv movel d0,a7@- | argc - jsr SYM(main) | Call C main + jsr SYM(boot_card) | Call C main PUBLIC (_mainDone) SYM(_mainDone): diff --git a/c/src/lib/libbsp/m68k/gen68360/start360/start360.s b/c/src/lib/libbsp/m68k/gen68360/start360/start360.s index 7a7000fcb3..2ce6a1d80b 100644 --- a/c/src/lib/libbsp/m68k/gen68360/start360/start360.s +++ b/c/src/lib/libbsp/m68k/gen68360/start360/start360.s @@ -401,7 +401,7 @@ ZEROLOOPTEST: movel d0,a7@- | environp movel d0,a7@- | argv movel d0,a7@- | argc - jsr SYM(main) | Call C main + jsr SYM(boot_card) | Call C main PUBLIC (_mainDone) SYM(_mainDone): diff --git a/c/src/lib/libbsp/m68k/gen68360/startup/Makefile.in b/c/src/lib/libbsp/m68k/gen68360/startup/Makefile.in index d16856f55e..ef688eb265 100644 --- a/c/src/lib/libbsp/m68k/gen68360/startup/Makefile.in +++ b/c/src/lib/libbsp/m68k/gen68360/startup/Makefile.in @@ -11,7 +11,7 @@ PROJECT_ROOT = @PROJECT_ROOT@ PGM=${ARCH}/startup.rel # C source names, if any, go here -- minus the .c -C_PIECES=alloc360 bspstart bspclean init68360 memcpy sbrk setvec +C_PIECES=alloc360 bspclean bspstart init68360 main memcpy sbrk setvec C_FILES=$(C_PIECES:%=%.c) C_O_FILES=$(C_PIECES:%=${ARCH}/%.o) diff --git a/c/src/lib/libbsp/m68k/gen68360/startup/bspstart.c b/c/src/lib/libbsp/m68k/gen68360/startup/bspstart.c index fed86a30b1..6593087194 100644 --- a/c/src/lib/libbsp/m68k/gen68360/startup/bspstart.c +++ b/c/src/lib/libbsp/m68k/gen68360/startup/bspstart.c @@ -143,17 +143,9 @@ bsp_postdriver_hook(void) rtems_fatal_error_occurred( error_code | 'I' << 8 | 'O' ); } -int main( - int argc, - char **argv, - char **environp -) +void bsp_start( void ) { extern void *_WorkspaceBase; - if ((argc > 0) && argv && argv[0]) - rtems_progname = argv[0]; - else - rtems_progname = "RTEMS"; /* * Allocate the memory for the RTEMS Work Space. This can come from @@ -234,14 +226,4 @@ int main( /* * Don't forget the other CPU Table entries. */ - - /* - * Start RTEMS - */ - - rtems_initialize_executive( &BSP_Configuration, &Cpu_table ); - - bsp_cleanup(); - - return 0; } diff --git a/c/src/lib/libbsp/m68k/idp/startup/Makefile.in b/c/src/lib/libbsp/m68k/idp/startup/Makefile.in index 5d0618fcda..ee58600cd3 100644 --- a/c/src/lib/libbsp/m68k/idp/startup/Makefile.in +++ b/c/src/lib/libbsp/m68k/idp/startup/Makefile.in @@ -11,7 +11,7 @@ PROJECT_ROOT = @PROJECT_ROOT@ PGM=${ARCH}/startup.rel # C source names, if any, go here -- minus the .c -C_PIECES=bspstart sbrk setvec +C_PIECES=bspclean bspstart main sbrk setvec C_FILES=$(C_PIECES:%=%.c) C_O_FILES=$(C_PIECES:%=${ARCH}/%.o) diff --git a/c/src/lib/libbsp/m68k/idp/startup/bspstart.c b/c/src/lib/libbsp/m68k/idp/startup/bspstart.c index df0d4e7f1a..2e226eb2b1 100644 --- a/c/src/lib/libbsp/m68k/idp/startup/bspstart.c +++ b/c/src/lib/libbsp/m68k/idp/startup/bspstart.c @@ -148,20 +148,11 @@ bsp_postdriver_hook(void) rtems_fatal_error_occurred( error_code | 'I' << 8 | 'O' ); } -int main( - int argc, - char **argv, - char **environp -) +void bsp_start( void ) { m68k_isr_entry *monitors_vector_table; int index; - if ((argc > 0) && argv && argv[0]) - rtems_progname = argv[0]; - else - rtems_progname = "RTEMS"; - duart_base = (unsigned char *)DUART_ADDR; /* @@ -248,9 +239,6 @@ int main( rtems_libio_config(&BSP_Configuration, BSP_LIBIO_MAX_FDS); /* led_putnum('e'); * for debugging purposes only */ - rtems_initialize_executive( &BSP_Configuration, &Cpu_table );/* does not return */ - - /* Clock_exit is done as an atexit() function */ - return 0; + /* Clock_exit is done as an atexit() function */ } diff --git a/c/src/lib/libbsp/m68k/mvme136/startup/Makefile.in b/c/src/lib/libbsp/m68k/mvme136/startup/Makefile.in index 6937330b60..60cbb0ecc6 100644 --- a/c/src/lib/libbsp/m68k/mvme136/startup/Makefile.in +++ b/c/src/lib/libbsp/m68k/mvme136/startup/Makefile.in @@ -11,7 +11,7 @@ PROJECT_ROOT = @PROJECT_ROOT@ PGM=${ARCH}/startup.rel # C source names, if any, go here -- minus the .c -C_PIECES=bspclean bspstart sbrk setvec +C_PIECES=bspclean bspstart main sbrk setvec C_FILES=$(C_PIECES:%=%.c) C_O_FILES=$(C_PIECES:%=${ARCH}/%.o) diff --git a/c/src/lib/libbsp/m68k/mvme136/startup/bspstart.c b/c/src/lib/libbsp/m68k/mvme136/startup/bspstart.c index bade2e8174..6c923e6073 100644 --- a/c/src/lib/libbsp/m68k/mvme136/startup/bspstart.c +++ b/c/src/lib/libbsp/m68k/mvme136/startup/bspstart.c @@ -141,21 +141,11 @@ bsp_postdriver_hook(void) rtems_fatal_error_occurred( error_code | 'I' << 8 | 'O' ); } - -int main( - int argc, - char **argv, - char **environp -) +void bsp_start( void ) { m68k_isr_entry *monitors_vector_table; int index; - if ((argc > 0) && argv && argv[0]) - rtems_progname = argv[0]; - else - rtems_progname = "RTEMS"; - monitors_vector_table = (m68k_isr_entry *)0; /* 135Bug Vectors are at 0 */ m68k_set_vbr( monitors_vector_table ); @@ -229,11 +219,4 @@ int main( */ rtems_libio_config(&BSP_Configuration, BSP_LIBIO_MAX_FDS); - - rtems_initialize_executive( &BSP_Configuration, &Cpu_table ); - /* does not return */ - - bsp_cleanup(); - - return 0; } diff --git a/c/src/lib/libbsp/m68k/mvme147/startup/Makefile.in b/c/src/lib/libbsp/m68k/mvme147/startup/Makefile.in index 6937330b60..60cbb0ecc6 100644 --- a/c/src/lib/libbsp/m68k/mvme147/startup/Makefile.in +++ b/c/src/lib/libbsp/m68k/mvme147/startup/Makefile.in @@ -11,7 +11,7 @@ PROJECT_ROOT = @PROJECT_ROOT@ PGM=${ARCH}/startup.rel # C source names, if any, go here -- minus the .c -C_PIECES=bspclean bspstart sbrk setvec +C_PIECES=bspclean bspstart main sbrk setvec C_FILES=$(C_PIECES:%=%.c) C_O_FILES=$(C_PIECES:%=${ARCH}/%.o) diff --git a/c/src/lib/libbsp/m68k/mvme147/startup/bspstart.c b/c/src/lib/libbsp/m68k/mvme147/startup/bspstart.c index 1dc095fe0a..842bf0bbac 100644 --- a/c/src/lib/libbsp/m68k/mvme147/startup/bspstart.c +++ b/c/src/lib/libbsp/m68k/mvme147/startup/bspstart.c @@ -144,21 +144,11 @@ bsp_postdriver_hook(void) rtems_fatal_error_occurred( error_code | 'I' << 8 | 'O' ); } - -int main( - int argc, - char **argv, - char **environp -) +void bsp_start( void ) { m68k_isr_entry *monitors_vector_table; int index; - if ((argc > 0) && argv && argv[0]) - rtems_progname = argv[0]; - else - rtems_progname = "RTEMS"; - monitors_vector_table = (m68k_isr_entry *)0; /* 135Bug Vectors are at 0 */ m68k_set_vbr( monitors_vector_table ); @@ -235,11 +225,4 @@ int main( */ rtems_libio_config(&BSP_Configuration, BSP_LIBIO_MAX_FDS); - - rtems_initialize_executive( &BSP_Configuration, &Cpu_table ); - /* does not return */ - - bsp_cleanup(); - - return 0; } diff --git a/c/src/lib/libbsp/m68k/mvme147s/startup/Makefile.in b/c/src/lib/libbsp/m68k/mvme147s/startup/Makefile.in index d42d523f17..0ccf177a4c 100644 --- a/c/src/lib/libbsp/m68k/mvme147s/startup/Makefile.in +++ b/c/src/lib/libbsp/m68k/mvme147s/startup/Makefile.in @@ -11,7 +11,7 @@ PROJECT_ROOT = @PROJECT_ROOT@ PGM=${ARCH}/startup.rel # C source names, if any, go here -- minus the .c -C_PIECES=bspclean bspstart sbrk setvec +C_PIECES=bspclean bspstart main sbrk setvec C_FILES=$(C_PIECES:%=%.c) C_O_FILES=$(C_PIECES:%=${ARCH}/%.o) diff --git a/c/src/lib/libbsp/m68k/mvme147s/startup/bspstart.c b/c/src/lib/libbsp/m68k/mvme147s/startup/bspstart.c index 5e97c02669..67ef0c9c94 100644 --- a/c/src/lib/libbsp/m68k/mvme147s/startup/bspstart.c +++ b/c/src/lib/libbsp/m68k/mvme147s/startup/bspstart.c @@ -144,22 +144,12 @@ bsp_postdriver_hook(void) rtems_fatal_error_occurred( error_code | 'I' << 8 | 'O' ); } - -int main( - int argc, - char **argv, - char **environp -) +void bsp_start( void ) { m68k_isr_entry *monitors_vector_table; int index; rtems_unsigned8 node_number; - if ((argc > 0) && argv && argv[0]) - rtems_progname = argv[0]; - else - rtems_progname = "RTEMS"; - monitors_vector_table = (m68k_isr_entry *)0; /* 147Bug Vectors are at 0 */ m68k_set_vbr( monitors_vector_table ); @@ -295,11 +285,4 @@ int main( */ rtems_libio_config(&BSP_Configuration, BSP_LIBIO_MAX_FDS); - - rtems_initialize_executive( &BSP_Configuration, &Cpu_table ); - /* does not return */ - - bsp_cleanup(); - - return 0; } diff --git a/c/src/lib/libbsp/m68k/mvme162/startup/Makefile.in b/c/src/lib/libbsp/m68k/mvme162/startup/Makefile.in index 4fb4b346b3..b1d452bf89 100644 --- a/c/src/lib/libbsp/m68k/mvme162/startup/Makefile.in +++ b/c/src/lib/libbsp/m68k/mvme162/startup/Makefile.in @@ -11,7 +11,7 @@ PROJECT_ROOT = @PROJECT_ROOT@ PGM=${ARCH}/startup.rel # C source names, if any, go here -- minus the .c -C_PIECES=bspclean bspstart page_table sbrk setvec +C_PIECES=bspclean bspstart main page_table sbrk setvec C_FILES=$(C_PIECES:%=%.c) C_O_FILES=$(C_PIECES:%=${ARCH}/%.o) diff --git a/c/src/lib/libbsp/m68k/mvme162/startup/bspstart.c b/c/src/lib/libbsp/m68k/mvme162/startup/bspstart.c index 6aa705a07c..b9430c9f30 100644 --- a/c/src/lib/libbsp/m68k/mvme162/startup/bspstart.c +++ b/c/src/lib/libbsp/m68k/mvme162/startup/bspstart.c @@ -148,20 +148,11 @@ bsp_postdriver_hook(void) rtems_fatal_error_occurred( error_code | 'I' << 8 | 'O' ); } -int main( - int argc, - char **argv, - char **environp -) +void bsp_start( void ) { m68k_isr_entry *monitors_vector_table; int index; - if ((argc > 0) && argv && argv[0]) - rtems_progname = argv[0]; - else - rtems_progname = "RTEMS"; - /* * 162Bug Vectors are at 0xFFE00000 * 162Bug Vectors on LX are at 0x00000000 @@ -252,11 +243,4 @@ int main( BSP_Configuration.work_space_start = (void *) (RAM_END - BSP_Configuration.work_space_size); - - rtems_initialize_executive( &BSP_Configuration, &Cpu_table ); - /* does not return */ - - bsp_cleanup(); - - return 0; } diff --git a/c/src/lib/libbsp/m68k/ods68302/start/cpuboot.c b/c/src/lib/libbsp/m68k/ods68302/start/cpuboot.c index 1a8f9bd2cf..fd8a4146de 100644 --- a/c/src/lib/libbsp/m68k/ods68302/start/cpuboot.c +++ b/c/src/lib/libbsp/m68k/ods68302/start/cpuboot.c @@ -110,7 +110,7 @@ void boot_phase_2(void) static constructors have not been called, and RTEMS is not initialised. */ -void boot_bsp(); +void boot_card(); void set_debug_traps(); void breakpoint(); @@ -127,7 +127,7 @@ void boot_phase_3(void) /* FIXME : add RAM and ROM checks */ /* boot the bsp, what ever this means */ - boot_bsp(); + boot_card(); WATCHDOG_TRIGGER(); } diff --git a/c/src/lib/libbsp/m68k/ods68302/start302/cpuboot.c b/c/src/lib/libbsp/m68k/ods68302/start302/cpuboot.c index 1a8f9bd2cf..fd8a4146de 100644 --- a/c/src/lib/libbsp/m68k/ods68302/start302/cpuboot.c +++ b/c/src/lib/libbsp/m68k/ods68302/start302/cpuboot.c @@ -110,7 +110,7 @@ void boot_phase_2(void) static constructors have not been called, and RTEMS is not initialised. */ -void boot_bsp(); +void boot_card(); void set_debug_traps(); void breakpoint(); @@ -127,7 +127,7 @@ void boot_phase_3(void) /* FIXME : add RAM and ROM checks */ /* boot the bsp, what ever this means */ - boot_bsp(); + boot_card(); WATCHDOG_TRIGGER(); } diff --git a/c/src/lib/libbsp/m68k/ods68302/startup/Makefile.in b/c/src/lib/libbsp/m68k/ods68302/startup/Makefile.in index 95f0c8b323..4e4b8bcc32 100644 --- a/c/src/lib/libbsp/m68k/ods68302/startup/Makefile.in +++ b/c/src/lib/libbsp/m68k/ods68302/startup/Makefile.in @@ -11,7 +11,7 @@ PROJECT_ROOT = @PROJECT_ROOT@ PGM=${ARCH}/startup.rel # C source names, if any, go here -- minus the .c -C_PIECES=crc debugport gdb-hooks m68302scc m68k-stub memcheck trace \ +C_PIECES=crc debugport gdb-hooks main m68302scc m68k-stub memcheck trace \ bspstart bspclean sbrk setvec C_FILES=$(C_PIECES:%=%.c) C_O_FILES=$(C_PIECES:%=${ARCH}/%.o) diff --git a/c/src/lib/libbsp/m68k/ods68302/startup/bspstart.c b/c/src/lib/libbsp/m68k/ods68302/startup/bspstart.c index 03e5918aa8..09b8494e05 100644 --- a/c/src/lib/libbsp/m68k/ods68302/startup/bspstart.c +++ b/c/src/lib/libbsp/m68k/ods68302/startup/bspstart.c @@ -148,7 +148,7 @@ bsp_postdriver_hook(void) rtems_fatal_error_occurred( error_code | 'I' << 8 | 'O' ); } -void bsp_start() +void bsp_start( void ) { /* * Allocate the memory for the RTEMS Work Space. This can come from @@ -230,34 +230,4 @@ void bsp_start() /* * Don't forget the other CPU Table entries. */ - - /* - * Start RTEMS - */ - - bsp_isr_level = rtems_initialize_executive_early( &BSP_Configuration, &Cpu_table ); } - -int main(int argc, char **argv, char **environ) -{ - if ((argc > 0) && argv && argv[0]) - rtems_progname = argv[0]; - else - rtems_progname = "RTEMS"; - - rtems_initialize_executive_late( bsp_isr_level ); - - bsp_cleanup(); - - return 0; -} - -void boot_bsp() -{ - /* the atexit hook will be before the static destructor list's entry - point */ - bsp_start(); - - exit(main(0, 0, 0)); -} - diff --git a/c/src/lib/libbsp/m68k/ods68302/startup/cpuboot.c b/c/src/lib/libbsp/m68k/ods68302/startup/cpuboot.c index 1a8f9bd2cf..fd8a4146de 100644 --- a/c/src/lib/libbsp/m68k/ods68302/startup/cpuboot.c +++ b/c/src/lib/libbsp/m68k/ods68302/startup/cpuboot.c @@ -110,7 +110,7 @@ void boot_phase_2(void) static constructors have not been called, and RTEMS is not initialised. */ -void boot_bsp(); +void boot_card(); void set_debug_traps(); void breakpoint(); @@ -127,7 +127,7 @@ void boot_phase_3(void) /* FIXME : add RAM and ROM checks */ /* boot the bsp, what ever this means */ - boot_bsp(); + boot_card(); WATCHDOG_TRIGGER(); } |