3 * This routine is the initialization task for this test program.
4 * It is called from init_exec and has the responsibility for creating
5 * and starting the tasks that make up the test. If the time of day
6 * clock is required for the test, it should also be set to a known
7 * value by this function.
9 * Input parameters: NONE
11 * Output parameters: NONE
13 * COPYRIGHT (c) 1989-1999.
14 * On-Line Applications Research Corporation (OAR).
16 * The license and distribution terms for this file may be
17 * found in the file LICENSE in this distribution or at
18 * http://www.rtems.com/license/LICENSE.
20 * $Id: init.c,v 1.12.4.1 2003/09/04 18:46:30 joel Exp $
23 #define CONFIGURE_INIT
24 #include <system_def.h>
26 #include "app_def.h"
\r
32 #include <rtems/error.h>
33 #include <rtems/monitor.h>
34 #include <rtems/shell.h>
36 #include <bsp/mscan.h>
37 #include <bsp/mscan-base.h>
41 #define BUILD_VERSION_STRING(major,minor,patch) \
42 __XSTRING(major) "." __XSTRING(minor) "." __XSTRING(patch)
44 #define RTEMS_VER_CODE VER_CODE(__RTEMS_MAJOR__ ,__RTEMS_MINOR__ ,__RTEMS_REVISION__)
47 #define CONFIGURE_SHELL_USER_COMMANDS &shell_command_print_can_totals
\r
48 #define CONFIGURE_SHELL_COMMANDS_INIT
\r
49 #define CONFIGURE_SHELL_COMMANDS_ALL
\r
51 #include <rtems/shellconfig.h>
\r
52 #include <rtems/shell.h>
\r
55 rtems_task Init(rtems_task_argument ignored){
56 rtems_status_code status;
58 printf( "\n\nRTEMS v "
59 BUILD_VERSION_STRING(__RTEMS_MAJOR__ ,__RTEMS_MINOR__ ,__RTEMS_REVISION__)
62 rtems_monitor_init(RTEMS_MONITOR_SUSPEND|RTEMS_MONITOR_GLOBAL);
64 printf( "Starting application " SW_VER_ID " v "
65 BUILD_VERSION_STRING(SW_VER_MAJOR,SW_VER_MINOR,SW_VER_PATCH)
73 start_load(0, NULL);
\r
77 #ifndef BENCH_BUILD
\r
79 "SHLL", /* task name */
\r
80 RTEMS_MINIMUM_STACK_SIZE * 4, /* task stack size */
\r
81 100, /* task priority */
\r
82 "/dev/console", /* device name */
\r
83 true, /* run forever */
\r
84 false, /* wait for shell to terminate */
\r
85 NULL /* login check function, use NULL to disable a login check */
\r
89 status = rtems_task_delete( RTEMS_SELF );