Index: c/src/lib/libbsp/arm/gdbarmsim/Makefile.am
===================================================================
--- c/src/lib/libbsp/arm/gdbarmsim/Makefile.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/arm/gdbarmsim/Makefile.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -17,4 +17,5 @@
 nodist_include_HEADERS = include/bspopts.h
 nodist_include_bsp_HEADERS = ../../shared/include/bootcard.h
+nodist_include_bsp_HEADERS += ../../shared/include/console-polled.h
 DISTCLEANFILES = include/bspopts.h
 noinst_PROGRAMS =
Index: c/src/lib/libbsp/arm/gdbarmsim/console/console-io.c
===================================================================
--- c/src/lib/libbsp/arm/gdbarmsim/console/console-io.c	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/arm/gdbarmsim/console/console-io.c	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -9,4 +9,5 @@
 
 #include <bsp.h>
+#include <bsp/console-polled.h>
 #include <rtems/libio.h>
 #include <stdlib.h>
@@ -52,5 +53,5 @@
 #include <rtems/bspIo.h>
 
-void MyBSP_output_char(char c) { console_outbyte_polled( 0, c ); }
+static void MyBSP_output_char(char c) { console_outbyte_polled( 0, c ); }
 
 BSP_output_char_function_type           BSP_output_char = MyBSP_output_char;
Index: c/src/lib/libbsp/arm/gdbarmsim/preinstall.am
===================================================================
--- c/src/lib/libbsp/arm/gdbarmsim/preinstall.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/arm/gdbarmsim/preinstall.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -74,4 +74,8 @@
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/bootcard.h
 
+$(PROJECT_INCLUDE)/bsp/console-polled.h: ../../shared/include/console-polled.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/console-polled.h
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/console-polled.h
+
 $(PROJECT_INCLUDE)/coverhd.h: ../../shared/include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp)
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/coverhd.h
Index: c/src/lib/libbsp/avr/avrtest/Makefile.am
===================================================================
--- c/src/lib/libbsp/avr/avrtest/Makefile.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/avr/avrtest/Makefile.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -13,4 +13,5 @@
 nodist_include_HEADERS = include/bspopts.h
 nodist_include_bsp_HEADERS = ../../shared/include/bootcard.h
+nodist_include_bsp_HEADERS += ../../shared/include/console-polled.h
 DISTCLEANFILES = include/bspopts.h
 noinst_PROGRAMS =
Index: c/src/lib/libbsp/avr/avrtest/console/console-io.c
===================================================================
--- c/src/lib/libbsp/avr/avrtest/console/console-io.c	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/avr/avrtest/console/console-io.c	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -1,6 +1,8 @@
 /*
  *  This file contains the hardware specific portions of the TTY driver
- *  for the serial ports on the erc32.
- *
+ *  for the serial ports on the avr.
+ */
+
+/*
  *  COPYRIGHT (c) 1989-2008.
  *  On-Line Applications Research Corporation (OAR).
@@ -12,4 +14,5 @@
 
 #include <bsp.h>
+#include <bsp/console-polled.h>
 #include <rtems/libio.h>
 #include <stdlib.h>
@@ -60,5 +63,5 @@
 #include <rtems/bspIo.h>
 
-void AVRsimBSP_output_char(char c) { console_outbyte_polled( 0, c ); }
+static void AVRsimBSP_output_char(char c) { console_outbyte_polled( 0, c ); }
 
 BSP_output_char_function_type           BSP_output_char = AVRsimBSP_output_char;
Index: c/src/lib/libbsp/avr/avrtest/preinstall.am
===================================================================
--- c/src/lib/libbsp/avr/avrtest/preinstall.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/avr/avrtest/preinstall.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -54,4 +54,8 @@
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/bootcard.h
 
+$(PROJECT_INCLUDE)/bsp/console-polled.h: ../../shared/include/console-polled.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/console-polled.h
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/console-polled.h
+
 $(PROJECT_INCLUDE)/coverhd.h: ../../shared/include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp)
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/coverhd.h
Index: c/src/lib/libbsp/h8300/h8sim/Makefile.am
===================================================================
--- c/src/lib/libbsp/h8300/h8sim/Makefile.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/h8300/h8sim/Makefile.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -12,4 +12,5 @@
 nodist_include_HEADERS = include/bspopts.h
 nodist_include_bsp_HEADERS = ../../shared/include/bootcard.h
+nodist_include_bsp_HEADERS += ../../shared/include/console-polled.h
 DISTCLEANFILES = include/bspopts.h
 
Index: c/src/lib/libbsp/h8300/h8sim/console/console-io.c
===================================================================
--- c/src/lib/libbsp/h8300/h8sim/console/console-io.c	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/h8300/h8sim/console/console-io.c	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -1,5 +1,5 @@
 /*
  *  This file contains the hardware specific portions of the TTY driver
- *  for the serial ports on the erc32.
+ *  for the serial ports on the h8300 simulator in gdb.
  */
 
@@ -14,4 +14,5 @@
 
 #include <bsp.h>
+#include <bsp/console-polled.h>
 #include <rtems/libio.h>
 #include <stdlib.h>
@@ -59,5 +60,5 @@
 #include <rtems/bspIo.h>
 
-void H8simBSP_output_char(char c) { console_outbyte_polled( 0, c ); }
+static void H8simBSP_output_char(char c) { console_outbyte_polled( 0, c ); }
 
 BSP_output_char_function_type           BSP_output_char = H8simBSP_output_char;
Index: c/src/lib/libbsp/h8300/h8sim/preinstall.am
===================================================================
--- c/src/lib/libbsp/h8300/h8sim/preinstall.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/h8300/h8sim/preinstall.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -54,4 +54,8 @@
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/bootcard.h
 
+$(PROJECT_INCLUDE)/bsp/console-polled.h: ../../shared/include/console-polled.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/console-polled.h
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/console-polled.h
+
 $(PROJECT_INCLUDE)/coverhd.h: ../../shared/include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp)
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/coverhd.h
Index: c/src/lib/libbsp/m32c/m32cbsp/Makefile.am
===================================================================
--- c/src/lib/libbsp/m32c/m32cbsp/Makefile.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/m32c/m32cbsp/Makefile.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -13,4 +13,5 @@
 nodist_include_HEADERS = include/bspopts.h
 nodist_include_bsp_HEADERS = ../../shared/include/bootcard.h
+nodist_include_bsp_HEADERS += ../../shared/include/console-polled.h
 DISTCLEANFILES = include/bspopts.h
 noinst_PROGRAMS =
Index: c/src/lib/libbsp/m32c/m32cbsp/console/console-io.c
===================================================================
--- c/src/lib/libbsp/m32c/m32cbsp/console/console-io.c	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/m32c/m32cbsp/console/console-io.c	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -1,6 +1,8 @@
 /*
  *  This file contains the hardware specific portions of the TTY driver
- *  for the serial ports on the erc32.
- *
+ *  for the serial ports on the m32c simulator in gdb.
+ */
+
+/*
  *  COPYRIGHT (c) 1989-2008.
  *  On-Line Applications Research Corporation (OAR).
@@ -12,4 +14,5 @@
 
 #include <bsp.h>
+#include <bsp/console-polled.h>
 #include <rtems/libio.h>
 #include <stdlib.h>
@@ -57,5 +60,5 @@
 #include <rtems/bspIo.h>
 
-void M32CsimBSP_output_char(char c) { console_outbyte_polled( 0, c ); }
+static void M32CsimBSP_output_char(char c) { console_outbyte_polled( 0, c ); }
 
 BSP_output_char_function_type       BSP_output_char = M32CsimBSP_output_char;
Index: c/src/lib/libbsp/m32c/m32cbsp/preinstall.am
===================================================================
--- c/src/lib/libbsp/m32c/m32cbsp/preinstall.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/m32c/m32cbsp/preinstall.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -54,4 +54,8 @@
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/bootcard.h
 
+$(PROJECT_INCLUDE)/bsp/console-polled.h: ../../shared/include/console-polled.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/console-polled.h
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/console-polled.h
+
 $(PROJECT_INCLUDE)/coverhd.h: ../../shared/include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp)
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/coverhd.h
Index: c/src/lib/libbsp/m32r/m32rsim/Makefile.am
===================================================================
--- c/src/lib/libbsp/m32r/m32rsim/Makefile.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/m32r/m32rsim/Makefile.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -13,4 +13,5 @@
 nodist_include_HEADERS = include/bspopts.h
 nodist_include_bsp_HEADERS = ../../shared/include/bootcard.h
+nodist_include_bsp_HEADERS += ../../shared/include/console-polled.h
 DISTCLEANFILES = include/bspopts.h
 noinst_PROGRAMS =
Index: c/src/lib/libbsp/m32r/m32rsim/console/console-io.c
===================================================================
--- c/src/lib/libbsp/m32r/m32rsim/console/console-io.c	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/m32r/m32rsim/console/console-io.c	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -9,4 +9,5 @@
 
 #include <bsp.h>
+#include <bsp/console-polled.h>
 #include <rtems/libio.h>
 #include <stdlib.h>
@@ -54,5 +55,5 @@
 #include <rtems/bspIo.h>
 
-void console_output_char(char c) { console_outbyte_polled( 0, c ); }
+static void console_output_char(char c) { console_outbyte_polled( 0, c ); }
 
 BSP_output_char_function_type           BSP_output_char = console_output_char;
Index: c/src/lib/libbsp/m32r/m32rsim/preinstall.am
===================================================================
--- c/src/lib/libbsp/m32r/m32rsim/preinstall.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/m32r/m32rsim/preinstall.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -54,4 +54,8 @@
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/bootcard.h
 
+$(PROJECT_INCLUDE)/bsp/console-polled.h: ../../shared/include/console-polled.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/console-polled.h
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/console-polled.h
+
 $(PROJECT_INCLUDE)/coverhd.h: ../../shared/include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp)
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/coverhd.h
Index: c/src/lib/libbsp/m68k/csb360/Makefile.am
===================================================================
--- c/src/lib/libbsp/m68k/csb360/Makefile.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/m68k/csb360/Makefile.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -12,4 +12,5 @@
 nodist_include_HEADERS = include/bspopts.h
 nodist_include_bsp_HEADERS = ../../shared/include/bootcard.h
+nodist_include_bsp_HEADERS += ../../shared/include/console-polled.h
 DISTCLEANFILES = include/bspopts.h
 
Index: c/src/lib/libbsp/m68k/csb360/console/console-io.c
===================================================================
--- c/src/lib/libbsp/m68k/csb360/console/console-io.c	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/m68k/csb360/console/console-io.c	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -2,5 +2,7 @@
  *  This file contains the hardware specific portions of the TTY driver
  *  for the serial ports on the mcf5272
- *
+ */
+
+/*
  *  COPYRIGHT (c) 1989-2000.
  *  On-Line Applications Research Corporation (OAR).
@@ -12,4 +14,5 @@
 
 #include <bsp.h>
+#include <bsp/console-polled.h>
 #include <rtems/libio.h>
 #include <mcf5272/mcf5272.h>
@@ -88,5 +91,5 @@
 #include <rtems/bspIo.h>
 
-void mcf5272_output_char(char c) { console_outbyte_polled( 0, c ); }
+static void mcf5272_output_char(char c) { console_outbyte_polled( 0, c ); }
 
 BSP_output_char_function_type           BSP_output_char = mcf5272_output_char;
Index: c/src/lib/libbsp/m68k/csb360/preinstall.am
===================================================================
--- c/src/lib/libbsp/m68k/csb360/preinstall.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/m68k/csb360/preinstall.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -54,4 +54,8 @@
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/bootcard.h
 
+$(PROJECT_INCLUDE)/bsp/console-polled.h: ../../shared/include/console-polled.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/console-polled.h
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/console-polled.h
+
 $(PROJECT_INCLUDE)/coverhd.h: include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp)
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/coverhd.h
Index: c/src/lib/libbsp/mips/csb350/Makefile.am
===================================================================
--- c/src/lib/libbsp/mips/csb350/Makefile.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/mips/csb350/Makefile.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -17,4 +17,5 @@
 nodist_include_HEADERS = include/bspopts.h
 nodist_include_bsp_HEADERS = ../../shared/include/bootcard.h
+nodist_include_bsp_HEADERS += ../../shared/include/console-polled.h
 DISTCLEANFILES = include/bspopts.h
 nodist_include_HEADERS += ../../shared/include/coverhd.h
Index: c/src/lib/libbsp/mips/csb350/console/console-io.c
===================================================================
--- c/src/lib/libbsp/mips/csb350/console/console-io.c	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/mips/csb350/console/console-io.c	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -2,7 +2,7 @@
  *  This file contains the hardware specific portions of the TTY driver
  *  for the serial ports on the csb350.
- *
- *  Logic based on the jmr3904-io.c file in newlib 1.8.2
- *
+ */
+
+/*
  *  COPYRIGHT (c) 1989-2000.
  *  On-Line Applications Research Corporation (OAR).
@@ -14,4 +14,5 @@
 
 #include <bsp.h>
+#include <bsp/console-polled.h>
 #include <rtems/libio.h>
 #include <libcpu/au1x00.h>
@@ -81,5 +82,5 @@
 }
 
-int csb250_get_char(void)
+static int csb250_get_char(void)
 {
   return console_inbyte_nonblocking(0);
Index: c/src/lib/libbsp/mips/csb350/preinstall.am
===================================================================
--- c/src/lib/libbsp/mips/csb350/preinstall.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/mips/csb350/preinstall.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -70,4 +70,8 @@
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/bootcard.h
 
+$(PROJECT_INCLUDE)/bsp/console-polled.h: ../../shared/include/console-polled.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/console-polled.h
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/console-polled.h
+
 $(PROJECT_INCLUDE)/coverhd.h: ../../shared/include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp)
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/coverhd.h
Index: c/src/lib/libbsp/mips/jmr3904/Makefile.am
===================================================================
--- c/src/lib/libbsp/mips/jmr3904/Makefile.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/mips/jmr3904/Makefile.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -17,4 +17,5 @@
 nodist_include_HEADERS = include/bspopts.h
 nodist_include_bsp_HEADERS = ../../shared/include/bootcard.h
+nodist_include_bsp_HEADERS += ../../shared/include/console-polled.h
 DISTCLEANFILES = include/bspopts.h
 
Index: c/src/lib/libbsp/mips/jmr3904/console/console-io.c
===================================================================
--- c/src/lib/libbsp/mips/jmr3904/console/console-io.c	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/mips/jmr3904/console/console-io.c	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -4,5 +4,7 @@
  *
  *  Logic based on the jmr3904-io.c file in newlib 1.8.2
- *
+ */
+
+/*
  *  COPYRIGHT (c) 1989-2000.
  *  On-Line Applications Research Corporation (OAR).
@@ -14,4 +16,5 @@
 
 #include <bsp.h>
+#include <bsp/console-polled.h>
 #include <rtems/libio.h>
 #include <stdlib.h>
@@ -115,5 +118,5 @@
 #include <rtems/bspIo.h>
 
-void JMR3904_output_char(char c) { console_outbyte_polled( 0, c ); }
+static void JMR3904_output_char(char c) { console_outbyte_polled( 0, c ); }
 
 BSP_output_char_function_type           BSP_output_char = JMR3904_output_char;
Index: c/src/lib/libbsp/mips/jmr3904/preinstall.am
===================================================================
--- c/src/lib/libbsp/mips/jmr3904/preinstall.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/mips/jmr3904/preinstall.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -70,4 +70,8 @@
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/bootcard.h
 
+$(PROJECT_INCLUDE)/bsp/console-polled.h: ../../shared/include/console-polled.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/console-polled.h
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/console-polled.h
+
 $(PROJECT_INCLUDE)/coverhd.h: ../../shared/include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp)
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/coverhd.h
Index: c/src/lib/libbsp/moxie/moxiesim/Makefile.am
===================================================================
--- c/src/lib/libbsp/moxie/moxiesim/Makefile.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/moxie/moxiesim/Makefile.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -16,4 +16,5 @@
 nodist_include_HEADERS = include/bspopts.h
 nodist_include_bsp_HEADERS = ../../shared/include/bootcard.h
+nodist_include_bsp_HEADERS += ../../shared/include/console-polled.h
 DISTCLEANFILES = include/bspopts.h
 
Index: c/src/lib/libbsp/moxie/moxiesim/console/console-io.c
===================================================================
--- c/src/lib/libbsp/moxie/moxiesim/console/console-io.c	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/moxie/moxiesim/console/console-io.c	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -2,5 +2,7 @@
  *  This file contains the hardware specific portions of the TTY driver
  *  for the Moxie GDB simulator.
- *
+ */
+
+/*
  *  COPYRIGHT (c) 2011.
  *  Anthony Green.
@@ -16,4 +18,5 @@
 
 #include <bsp.h>
+#include <bsp/console-polled.h>
 #include <rtems/libio.h>
 #include <stdlib.h>
@@ -61,5 +64,5 @@
 #include <rtems/bspIo.h>
 
-void moxiesim_output_char(char c) { console_outbyte_polled( 0, c ); }
+static void moxiesim_output_char(char c) { console_outbyte_polled( 0, c ); }
 
 BSP_output_char_function_type           BSP_output_char = moxiesim_output_char;
Index: c/src/lib/libbsp/moxie/moxiesim/preinstall.am
===================================================================
--- c/src/lib/libbsp/moxie/moxiesim/preinstall.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/moxie/moxiesim/preinstall.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -54,4 +54,8 @@
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/bootcard.h
 
+$(PROJECT_INCLUDE)/bsp/console-polled.h: ../../shared/include/console-polled.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/console-polled.h
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/console-polled.h
+
 $(PROJECT_INCLUDE)/coverhd.h: ../../shared/include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp)
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/coverhd.h
Index: c/src/lib/libbsp/nios2/nios2_iss/Makefile.am
===================================================================
--- c/src/lib/libbsp/nios2/nios2_iss/Makefile.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/nios2/nios2_iss/Makefile.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -12,4 +12,5 @@
 nodist_include_HEADERS = include/bspopts.h
 nodist_include_bsp_HEADERS = ../../shared/include/bootcard.h
+nodist_include_bsp_HEADERS += ../../shared/include/console-polled.h
 DISTCLEANFILES = include/bspopts.h
 
Index: c/src/lib/libbsp/nios2/nios2_iss/console/console.c
===================================================================
--- c/src/lib/libbsp/nios2/nios2_iss/console/console.c	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/nios2/nios2_iss/console/console.c	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -1,6 +1,7 @@
 /*
  *  This file implements simple console IO via JTAG UART.
- *
- *  Based on no_cpu/console.c
+ */
+
+/*
  *  COPYRIGHT (c) 1989-1999.
  *  On-Line Applications Research Corporation (OAR).
@@ -17,4 +18,5 @@
 
 #include <bsp.h>
+#include <bsp/console-polled.h>
 #include <rtems/libio.h>
 
@@ -114,5 +116,5 @@
 
 
-void ISS_output_char(char c) { console_outbyte_polled( 0, c ); }
+static void ISS_output_char(char c) { console_outbyte_polled( 0, c ); }
 
 BSP_output_char_function_type           BSP_output_char = ISS_output_char;
Index: c/src/lib/libbsp/nios2/nios2_iss/preinstall.am
===================================================================
--- c/src/lib/libbsp/nios2/nios2_iss/preinstall.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/nios2/nios2_iss/preinstall.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -54,4 +54,8 @@
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/bootcard.h
 
+$(PROJECT_INCLUDE)/bsp/console-polled.h: ../../shared/include/console-polled.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/console-polled.h
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/console-polled.h
+
 $(PROJECT_INCLUDE)/coverhd.h: ../../shared/include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp)
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/coverhd.h
Index: c/src/lib/libbsp/powerpc/psim/Makefile.am
===================================================================
--- c/src/lib/libbsp/powerpc/psim/Makefile.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/powerpc/psim/Makefile.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -15,4 +15,5 @@
 nodist_include_HEADERS = include/bspopts.h
 nodist_include_bsp_HEADERS = ../../shared/include/bootcard.h
+nodist_include_bsp_HEADERS += ../../shared/include/console-polled.h
 DISTCLEANFILES = include/bspopts.h
 
Index: c/src/lib/libbsp/powerpc/psim/console/console-io.c
===================================================================
--- c/src/lib/libbsp/powerpc/psim/console/console-io.c	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/powerpc/psim/console/console-io.c	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -14,4 +14,5 @@
 
 #include <bsp.h>
+#include <bsp/console-polled.h>
 #include <rtems/libio.h>
 #include <stdlib.h>
@@ -72,5 +73,5 @@
 #include <rtems/bspIo.h>
 
-void PSIM_output_char(char c) { console_outbyte_polled( 0, c ); }
+static void PSIM_output_char(char c) { console_outbyte_polled( 0, c ); }
 
 BSP_output_char_function_type           BSP_output_char = PSIM_output_char;
Index: c/src/lib/libbsp/powerpc/psim/preinstall.am
===================================================================
--- c/src/lib/libbsp/powerpc/psim/preinstall.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/powerpc/psim/preinstall.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -62,4 +62,8 @@
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/bootcard.h
 
+$(PROJECT_INCLUDE)/bsp/console-polled.h: ../../shared/include/console-polled.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/console-polled.h
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/console-polled.h
+
 $(PROJECT_INCLUDE)/coverhd.h: include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp)
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/coverhd.h
Index: c/src/lib/libbsp/powerpc/qemuppc/Makefile.am
===================================================================
--- c/src/lib/libbsp/powerpc/qemuppc/Makefile.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/powerpc/qemuppc/Makefile.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -13,4 +13,5 @@
 nodist_include_HEADERS = include/bspopts.h
 nodist_include_bsp_HEADERS = ../../shared/include/bootcard.h
+nodist_include_bsp_HEADERS += ../../shared/include/console-polled.h
 DISTCLEANFILES = include/bspopts.h
 noinst_PROGRAMS =
Index: c/src/lib/libbsp/powerpc/qemuppc/console/console-io.c
===================================================================
--- c/src/lib/libbsp/powerpc/qemuppc/console/console-io.c	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/powerpc/qemuppc/console/console-io.c	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -1,6 +1,8 @@
 /*
  *  This file contains the hardware specific portions of the TTY driver
- *  for the serial ports on the erc32.
- *
+ *  for the serial ports on the qemuppc.
+ */
+
+/*
  *  COPYRIGHT (c) 1989-2008.
  *  On-Line Applications Research Corporation (OAR).
@@ -12,4 +14,5 @@
 
 #include <bsp.h>
+#include <bsp/console-polled.h>
 #include <rtems/libio.h>
 #include <stdlib.h>
@@ -69,5 +72,5 @@
 #include <rtems/bspIo.h>
 
-void simBSP_output_char(char c) { console_outbyte_polled( 0, c ); }
+static void simBSP_output_char(char c) { console_outbyte_polled( 0, c ); }
 
 BSP_output_char_function_type           BSP_output_char = simBSP_output_char;
Index: c/src/lib/libbsp/powerpc/qemuppc/preinstall.am
===================================================================
--- c/src/lib/libbsp/powerpc/qemuppc/preinstall.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/powerpc/qemuppc/preinstall.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -54,4 +54,8 @@
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/bootcard.h
 
+$(PROJECT_INCLUDE)/bsp/console-polled.h: ../../shared/include/console-polled.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/console-polled.h
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/console-polled.h
+
 $(PROJECT_INCLUDE)/coverhd.h: ../../shared/include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp)
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/coverhd.h
Index: c/src/lib/libbsp/sh/shsim/Makefile.am
===================================================================
--- c/src/lib/libbsp/sh/shsim/Makefile.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/sh/shsim/Makefile.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -13,4 +13,5 @@
 nodist_include_HEADERS = include/bspopts.h
 nodist_include_bsp_HEADERS = ../../shared/include/bootcard.h
+nodist_include_bsp_HEADERS += ../../shared/include/console-polled.h
 DISTCLEANFILES = include/bspopts.h
 
Index: c/src/lib/libbsp/sh/shsim/console/console-io.c
===================================================================
--- c/src/lib/libbsp/sh/shsim/console/console-io.c	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/sh/shsim/console/console-io.c	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -2,7 +2,7 @@
  *  This file contains the hardware specific portions of the TTY driver
  *  for the simulators stdin/out.
- *
- *  Logic based on newlib-1.8.2/newlib/libc/sys/sh/syscalls.c
- *
+ */
+
+/*
  *  COPYRIGHT (c) 1989-2011.
  *  On-Line Applications Research Corporation (OAR).
@@ -14,4 +14,5 @@
 
 #include <bsp.h>
+#include <bsp/console-polled.h>
 #include <rtems/libio.h>
 #include <stdlib.h>
Index: c/src/lib/libbsp/sh/shsim/preinstall.am
===================================================================
--- c/src/lib/libbsp/sh/shsim/preinstall.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/sh/shsim/preinstall.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -58,4 +58,8 @@
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/bootcard.h
 
+$(PROJECT_INCLUDE)/bsp/console-polled.h: ../../shared/include/console-polled.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/console-polled.h
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/console-polled.h
+
 $(PROJECT_INCLUDE)/coverhd.h: ../../shared/include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp)
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/coverhd.h
Index: c/src/lib/libbsp/shared/console-polled.c
===================================================================
--- c/src/lib/libbsp/shared/console-polled.c	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/shared/console-polled.c	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -3,5 +3,7 @@
  *  console device driver.  If a BSP chooses to use this, then it
  *  only has to provide a few board dependent routines.
- *
+ */
+
+/*
  *  COPYRIGHT (c) 1989-1997.
  *  On-Line Applications Research Corporation (OAR).
@@ -17,8 +19,9 @@
 #include <assert.h>
 
-/* external prototypes for monitor interface routines */
-void console_outbyte_polled(int  port, char ch);
-int console_inbyte_nonblocking(int port);
-void console_initialize_hardware(void);
+#include <bsp/console-polled.h>
+
+/*
+ *  Prototypes
+ */
 ssize_t console_write_support(int, const char *, size_t);
 
Index: c/src/lib/libbsp/shared/include/console-polled.h
===================================================================
--- c/src/lib/libbsp/shared/include/console-polled.h	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
+++ c/src/lib/libbsp/shared/include/console-polled.h	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -0,0 +1,43 @@
+/**
+ * @file
+ *
+ * @ingroup Console
+ *
+ * This file defines the interfaces between the single port
+ * polled console framework and the BSP.
+ */
+
+/*
+ *  The license and distribution terms for this file may be
+ *  found in the file LICENSE in this distribution or at
+ *  http://www.rtems.org/license/LICENSE.
+ */
+
+#ifndef __BSP_CONSOLE_POLLED_h
+#define __BSP_CONSOLE_POLLED_h
+
+/**
+ * This method polls the specified character @a ch to the specified
+ * console @a port.
+ *
+ * @param[in] port is the output port
+ * @param[in] ch is the character to print
+ */
+void console_outbyte_polled(int port, char ch);
+
+/**
+ * This method polls the specified @a port for an input character.
+ * console @a port.
+ *
+ * @param[in] port is the input port
+ *
+ * @return This method returns the character read of -1 if there is no data.
+ */
+int console_inbyte_nonblocking(int port);
+
+/**
+ * This method is invoked to initialize the console hardware device(s).
+ */
+void console_initialize_hardware(void);
+
+#endif
Index: c/src/lib/libbsp/v850/gdbv850sim/Makefile.am
===================================================================
--- c/src/lib/libbsp/v850/gdbv850sim/Makefile.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/v850/gdbv850sim/Makefile.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -17,4 +17,5 @@
 nodist_include_HEADERS = include/bspopts.h
 nodist_include_bsp_HEADERS = ../../shared/include/bootcard.h
+nodist_include_bsp_HEADERS += ../../shared/include/console-polled.h
 DISTCLEANFILES = include/bspopts.h
 noinst_PROGRAMS =
Index: c/src/lib/libbsp/v850/gdbv850sim/console/console-io.c
===================================================================
--- c/src/lib/libbsp/v850/gdbv850sim/console/console-io.c	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/v850/gdbv850sim/console/console-io.c	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -9,4 +9,5 @@
 
 #include <bsp.h>
+#include <bsp/console-polled.h>
 #include <rtems/libio.h>
 #include <bsp/syscall.h>
@@ -56,5 +57,5 @@
 #include <rtems/bspIo.h>
 
-void console_output_char(char c) { console_outbyte_polled( 0, c ); }
+static void console_output_char(char c) { console_outbyte_polled( 0, c ); }
 
 BSP_output_char_function_type           BSP_output_char = console_output_char;
Index: c/src/lib/libbsp/v850/gdbv850sim/preinstall.am
===================================================================
--- c/src/lib/libbsp/v850/gdbv850sim/preinstall.am	(revision 8536b67bab9886ea992f08fe23e35a84579df573)
+++ c/src/lib/libbsp/v850/gdbv850sim/preinstall.am	(revision 62791499ebf0a6161e1541eb7587c57d88407f8b)
@@ -58,4 +58,8 @@
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/bootcard.h
 
+$(PROJECT_INCLUDE)/bsp/console-polled.h: ../../shared/include/console-polled.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/console-polled.h
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/console-polled.h
+
 $(PROJECT_INCLUDE)/coverhd.h: ../../shared/include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp)
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/coverhd.h
