From cf81d7794c958d00ec72f0b7d49415dbeef2a3fc Mon Sep 17 00:00:00 2001 From: "W. Eric Norum" Date: Wed, 19 Jul 2000 15:13:52 +0000 Subject: [PATCH] Increase RTEMS executive workspace. Don't bother trying to fit EPICS/RTEMS on to machines with less than 16 Mbytes of RAM. Ensure console serial line handshaking is off. We don't want a rogue terminal or terminal concentrator locking things up. --- src/libCom/osi/os/RTEMS/rtems_init.c | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/src/libCom/osi/os/RTEMS/rtems_init.c b/src/libCom/osi/os/RTEMS/rtems_init.c index a5d344c70..83447f3ae 100644 --- a/src/libCom/osi/os/RTEMS/rtems_init.c +++ b/src/libCom/osi/os/RTEMS/rtems_init.c @@ -35,7 +35,7 @@ */ #define CONFIGURE_RTEMS_INIT_TASKS_TABLE -#define CONFIGURE_EXECUTIVE_RAM_SIZE (1024*1024) +#define CONFIGURE_EXECUTIVE_RAM_SIZE (2000*1024) #define CONFIGURE_MAXIMUM_TASKS rtems_resource_unlimited(30) #define CONFIGURE_MAXIMUM_SEMAPHORES rtems_resource_unlimited(500) #define CONFIGURE_MAXIMUM_TIMERS rtems_resource_unlimited(20) @@ -323,6 +323,25 @@ rtems_reboot (const char *name) c = getchar (); } +/* + * Set up the console serial line (no handshaking) + */ +static void +initConsole (void) +{ + struct termios t; + + if (tcgetattr (fileno (stdin), &t) < 0) { + printf ("tcgetattr failed: %s\n", strerror (errno)); + return; + } + t.c_iflag &= ~(IXOFF | IXON | IXANY); + if (tcsetattr (fileno (stdin), TCSANOW, &t) < 0) { + printf ("tcsetattr failed: %s\n", strerror (errno)); + return; + } +} + /* * RTEMS Startup task */ @@ -332,6 +351,7 @@ Init (rtems_task_argument ignored) /* * Create a reasonable environment */ + initConsole (); putenv ("TERM=xterm"); putenv ("IOCSH_PS1=rtems> "); putenv ("IOCSH_HISTSIZE=20");