diff options
author | Joel Sherrill <joel.sherrill@oarcorp.com> | 2012-06-11 13:37:29 -0500 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@oarcorp.com> | 2012-06-11 13:37:29 -0500 |
commit | 2d7ae960bbdbc82f795814ee6c600e93200ddf4d (patch) | |
tree | ad12bf1ac7f551a70f004a897a7246cf0b9ea716 /c/src/lib/libbsp/v850/gdbv850sim/console/console-io.c | |
parent | powerpc/cpu.h: Define CPU_SIMPLE_VECTORED_INTERRUPTS and remove _CPU_ISR_Init... (diff) | |
download | rtems-2d7ae960bbdbc82f795814ee6c600e93200ddf4d.tar.bz2 |
v850 port: Initial addition with BSP for simulator in GDB
Port
+ v850 does not have appear to have any optimized bit scan instructions
+ v850 does have single instructions for wap u16 and u32
+ Code path optimization preferences set
+ Add BSP variants for each GCC CPU model flag and a README
- v850e1 variant does not work (fails during BSP initialization)
BSP for GDB v850 Simulator
+ linkcmds matches defaults in GDB simulator with RTEMS mods
+ crt1.c added from v850 newlib port for __main()
+ BSP exits cleanly
+ printk and console I/O work
+ uses clock tick from IDLE task
+ Tests not requiring real clock ISR work
Documentation
+ CPU Supplment chapter for v850 added
Diffstat (limited to 'c/src/lib/libbsp/v850/gdbv850sim/console/console-io.c')
-rw-r--r-- | c/src/lib/libbsp/v850/gdbv850sim/console/console-io.c | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/v850/gdbv850sim/console/console-io.c b/c/src/lib/libbsp/v850/gdbv850sim/console/console-io.c new file mode 100644 index 0000000000..ddaa115764 --- /dev/null +++ b/c/src/lib/libbsp/v850/gdbv850sim/console/console-io.c @@ -0,0 +1,61 @@ +/* + * COPYRIGHT (c) 1989-2012. + * 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. + */ + +#include <bsp.h> +#include <rtems/libio.h> +#include <bsp/syscall.h> + +/* + * console_initialize_hardware + * + * This routine initializes the console hardware. + */ +void console_initialize_hardware(void) +{ +} + +/* + * console_outbyte_polled + * + * This routine transmits a character using polling. + */ +void console_outbyte_polled( + int port, + char ch +) +{ + TRAP0(SYS_write, 1, &ch, 1); +} + +/* + * console_inbyte_nonblocking + * + * This routine polls for a character. + */ + +int console_inbyte_nonblocking( + int port +) +{ + char ch; + int rc; + + rc = TRAP0 (SYS_read, 0, &ch, 1); + + if ( rc != 1 ) + return -1; + return ch; +} + +#include <rtems/bspIo.h> + +void console_output_char(char c) { console_outbyte_polled( 0, c ); } + +BSP_output_char_function_type BSP_output_char = console_output_char; +BSP_polling_getchar_function_type BSP_poll_char = NULL; |