From fd3cd3e3e345b7196d35423ea1eb070e5a1b4559 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Fri, 28 Aug 2009 18:20:12 +0000 Subject: 2009-08-28 Joel Sherrill * configure.ac, console/conscfg.c: Add CONSOLE_USE_INTERRUPTS. --- c/src/lib/libbsp/m68k/sim68000/ChangeLog | 4 +++ c/src/lib/libbsp/m68k/sim68000/configure.ac | 10 ++++++ c/src/lib/libbsp/m68k/sim68000/console/conscfg.c | 41 ++++++++++++------------ 3 files changed, 35 insertions(+), 20 deletions(-) (limited to 'c/src/lib/libbsp/m68k') diff --git a/c/src/lib/libbsp/m68k/sim68000/ChangeLog b/c/src/lib/libbsp/m68k/sim68000/ChangeLog index ecff3cbf9a..b147a0d8a5 100644 --- a/c/src/lib/libbsp/m68k/sim68000/ChangeLog +++ b/c/src/lib/libbsp/m68k/sim68000/ChangeLog @@ -1,3 +1,7 @@ +2009-08-28 Joel Sherrill + + * configure.ac, console/conscfg.c: Add CONSOLE_USE_INTERRUPTS. + 2009-07-16 Joel Sherrill * configure.ac: Rename BSP_BOOTCARD_OPTIONS to diff --git a/c/src/lib/libbsp/m68k/sim68000/configure.ac b/c/src/lib/libbsp/m68k/sim68000/configure.ac index 4cbf7b926c..a4660c036e 100644 --- a/c/src/lib/libbsp/m68k/sim68000/configure.ac +++ b/c/src/lib/libbsp/m68k/sim68000/configure.ac @@ -15,6 +15,16 @@ RTEMS_PROG_CC_FOR_TARGET([-ansi -fasm]) RTEMS_CANONICALIZE_TOOLS RTEMS_PROG_CCAS +## bsp-specific options +RTEMS_BSPOPTS_SET([CONSOLE_USE_INTERRUPTS],[*],[0]) +RTEMS_BSPOPTS_HELP([CONSOLE_USE_INTERRUPTS], +[The erc32 console driver can operate in either polled or interrupt mode. +Under the simulator (especially when FAST_UART is defined), polled seems to operate +better. It is common for a task to print a line (like the end of test message) and +then exit. In this case, the program returns control to the simulator command line +before the program has even queued the output to the uart. Thus sis has no chance +of getting the data out.]) + RTEMS_BSP_BOOTCARD_OPTIONS RTEMS_BSP_CLEANUP_OPTIONS(0, 0) diff --git a/c/src/lib/libbsp/m68k/sim68000/console/conscfg.c b/c/src/lib/libbsp/m68k/sim68000/console/conscfg.c index 08663b3ae1..7173145d8d 100644 --- a/c/src/lib/libbsp/m68k/sim68000/console/conscfg.c +++ b/c/src/lib/libbsp/m68k/sim68000/console/conscfg.c @@ -12,6 +12,7 @@ */ #include +#include #include #include @@ -37,26 +38,26 @@ #define MC68681_FUNCTIONS &mc68681_fns_polled #endif -console_tbl Console_Port_Tbl[] = { - { - "/dev/com0", /* sDeviceName */ - SERIAL_MC68681, /* deviceType */ - MC68681_FUNCTIONS, /* pDeviceFns */ - NULL, /* deviceProbe */ - NULL, /* pDeviceFlow */ - 16, /* ulMargin */ - 8, /* ulHysteresis */ - (void *)9600, /* baud rate */ /* pDeviceParams */ - MC68681_BASE_ADDRESS, /* ulCtrlPort1 */ - MC68681_BASE_ADDRESS, /* ulCtrlPort2 */ - MC68681_DATA_ADDRESS, /* ulDataPort */ - mc68681_get_register_2, /* getRegister */ - mc68681_set_register_2, /* setRegister */ - NULL, /* unused */ /* getData */ - NULL, /* unused */ /* setData */ - (uint32_t)mc68681_baud_rate_table, /* ulClock */ - MC68681_VECTOR /* ulIntVector */ - } +console_tbl Console_Port_Tbl[] = { + { + "/dev/com0", /* sDeviceName */ + SERIAL_MC68681, /* deviceType */ + MC68681_FUNCTIONS, /* pDeviceFns */ + NULL, /* deviceProbe */ + NULL, /* pDeviceFlow */ + 16, /* ulMargin */ + 8, /* ulHysteresis */ + (void *)9600, /* pDeviceParams */ + MC68681_BASE_ADDRESS, /* ulCtrlPort1 */ + MC68681_BASE_ADDRESS, /* ulCtrlPort2 */ + MC68681_DATA_ADDRESS, /* ulDataPort */ + mc68681_get_register_2, /* getRegister */ + mc68681_set_register_2, /* setRegister */ + NULL, /* unused */ /* getData */ + NULL, /* unused */ /* setData */ + (uint32_t)mc68681_baud_rate_table, /* ulClock */ + MC68681_VECTOR /* ulIntVector */ + } }; /* -- cgit v1.2.3