X-Git-Url: http://rtime.felk.cvut.cz/gitweb/can-benchmark.git/blobdiff_plain/b29b333865c98b5e48073731980fa6c3cc58f1eb..ddc40c70cfce8c93b228bc28a3144da45acd6708:/rtems/gw/cangw/init.c diff --git a/rtems/gw/cangw/init.c b/rtems/gw/cangw/init.c index 63e00ea..5147673 100644 --- a/rtems/gw/cangw/init.c +++ b/rtems/gw/cangw/init.c @@ -1,25 +1,3 @@ -/* Init - * - * This routine is the initialization task for this test program. - * It is called from init_exec and has the responsibility for creating - * and starting the tasks that make up the test. If the time of day - * clock is required for the test, it should also be set to a known - * value by this function. - * - * Input parameters: NONE - * - * Output parameters: NONE - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id: init.c,v 1.12.4.1 2003/09/04 18:46:30 joel Exp $ - */ - #define CONFIGURE_INIT #include #include "system.h" @@ -43,22 +21,14 @@ #define RTEMS_VER_CODE VER_CODE(__RTEMS_MAJOR__ ,__RTEMS_MINOR__ ,__RTEMS_REVISION__) -#if RTEMS_VER_CODE < VER_CODE(4,7,99) - #define rtems_shell_add_cmd shell_add_cmd - #define rtems_shell_init(m_task_name,m_task_stacksize,m_task_priority,m_devname,m_forever,m_wait,m_login_check) \ - shell_init(m_task_name,m_task_stacksize,m_task_priority,m_devname,B19200 | CS8,m_forever) -#elif RTEMS_VER_CODE < VER_CODE(4,9,99) - #define rtems_shell_init(m_task_name,m_task_stacksize,m_task_priority,m_devname,m_forever,m_wait,m_login_check) \ - rtems_shell_init(m_task_name,m_task_stacksize,m_task_priority,m_devname,m_forever,m_wait) -#endif -void bad_rtems_status(rtems_status_code status, int fail_level, const char *text){ - printf("ERROR: %s status %s", text, rtems_status_text(status)); - status = rtems_task_delete( RTEMS_SELF ); -} +#define CONFIGURE_SHELL_USER_COMMANDS &shell_command_print_can_totals +#define CONFIGURE_SHELL_COMMANDS_INIT +#define CONFIGURE_SHELL_COMMANDS_ALL +#include +#include - rtems_task Init(rtems_task_argument ignored){ rtems_status_code status; @@ -68,39 +38,31 @@ rtems_task Init(rtems_task_argument ignored){ "\n"); rtems_monitor_init(RTEMS_MONITOR_SUSPEND|RTEMS_MONITOR_GLOBAL); - /*rtems_capture_cli_init (0);*/ printf( "Starting application " SW_VER_ID " v " BUILD_VERSION_STRING(SW_VER_MAJOR,SW_VER_MINOR,SW_VER_PATCH) "\n" ); - - - rtems_shell_init("SHLL", RTEMS_MINIMUM_STACK_SIZE+0x1000, - SHELL_TASK_PRIORITY, "/dev/console", 1, 0, NULL); - - rtems_shell_add_cmd("startGW", "app", - "initialize can driver and startGW", - start_can); - - rtems_shell_add_cmd("stopGW", "app", - "stops GW", - end_can); - - rtems_shell_add_cmd("printvar", "app", - "prints info from vars", - print_regs); - - rtems_shell_add_cmd("printcan", "app", - "prints error rate from CANs", - print_can_totals); - - rtems_shell_add_cmd("startNET", "app", - "tries to start network adapter", - start_net); - - rtems_shell_add_cmd("showNET", "app", - "prints some diagnostic info from network adapter/driver", - show_net); + + /* Inits */ +#ifdef BENCH_BUILD + start_can(0, NULL); + start_net(0, NULL); +#ifdef LOAD_BUILD + start_load(0, NULL); +#endif +#endif + +#ifndef BENCH_BUILD + rtems_shell_init( + "SHLL", /* task name */ + RTEMS_MINIMUM_STACK_SIZE * 4, /* task stack size */ + 100, /* task priority */ + "/dev/console", /* device name */ + true, /* run forever */ + false, /* wait for shell to terminate */ + NULL /* login check function, use NULL to disable a login check */ + ); +#endif status = rtems_task_delete( RTEMS_SELF );