diff --git a/arch/sh/src/sh1/sh1_lowputc.c b/arch/sh/src/sh1/sh1_lowputc.c
index 983c3688bf4b6436252f9a500a90dbbbe1776bcc..816a84835e5f8fcab83621f7f35f202210416a4b 100644
--- a/arch/sh/src/sh1/sh1_lowputc.c
+++ b/arch/sh/src/sh1/sh1_lowputc.c
@@ -56,9 +56,16 @@
 
 /* Is there a serial console? */
 
-#if defined(CONFIG_SCI0_SERIAL_CONSOLE) || defined(CONFIG_SCI1_SERIAL_CONSOLE)
-#  define HAVE_CONSOLE
+#if defined(CONFIG_SCI0_SERIAL_CONSOLE) && defined(CONFIG_SH1_SCI0)
+#  define HAVE_CONSOLE 1
+#  undef CONFIG_SCI1_SERIAL_CONSOLE
+#elif defined(CONFIG_SCI1_SERIAL_CONSOLE) && defined(CONFIG_SH1_SCI1)
+#  define HAVE_CONSOLE 1
+#  undef CONFIG_SCI0_SERIAL_CONSOLE
 #else
+#  if defined(CONFIG_SCI0_SERIAL_CONSOLE) || defined(CONFIG_SCI1_SERIAL_CONSOLE)
+#    error "Serial console selected, but corresponding SCI not enabled"
+#  endif
 #  undef HAVE_CONSOLE
 #endif
 
@@ -166,10 +173,12 @@
  *
  **************************************************************************/
 
+#ifdef HAVE_CONSOLE
 int inline up_txready(void)
 {
   return getreg8(SH1_SCI_BASE + SH1_SCI_SSR_OFFSET) & SH1_SCISSR_TDRE;
 }
+#endif
 
 /**************************************************************************
  * Public Functions
diff --git a/arch/sh/src/sh1/sh1_serial.c b/arch/sh/src/sh1/sh1_serial.c
index 7578132b2af365ae800f52a775d6ea8f85bd07d9..550ca8cc72a4eab4b635e59988168562843c5a68 100644
--- a/arch/sh/src/sh1/sh1_serial.c
+++ b/arch/sh/src/sh1/sh1_serial.c
@@ -53,19 +53,36 @@
 #include "up_arch.h"
 #include "up_internal.h"
 
-#ifdef CONFIG_USE_SERIALDRIVER
-
 /****************************************************************************
  * Definitions
  ****************************************************************************/
 
 /* Some sanity checks *******************************************************/
 
+/* Are there any SCIs? */
+
+#if !defined(CONFIG_SH1_SCI0) && !defined(CONFIG_SH1_SCI1)
+#  ifdef CONFIG_USE_SERIALDRIVER
+#    error "Serial driver selected, but SCIs not enabled"
+#  endif
+#  undef HAVE_CONSOLE
+#  undef CONFIG_USE_SERIALDRIVER
+#endif
+
+#ifdef CONFIG_USE_SERIALDRIVER
+
 /* Is there a serial console? */
 
-#if defined(CONFIG_SCI0_SERIAL_CONSOLE) || defined(CONFIG_SCI1_SERIAL_CONSOLE)
-#  define HAVE_CONSOLE
+#if defined(CONFIG_SCI0_SERIAL_CONSOLE) && defined(CONFIG_SH1_SCI0)
+#  define HAVE_CONSOLE 1
+#  undef CONFIG_SCI1_SERIAL_CONSOLE
+#elif defined(CONFIG_SCI1_SERIAL_CONSOLE) && defined(CONFIG_SH1_SCI1)
+#  define HAVE_CONSOLE 1
+#  undef CONFIG_SCI0_SERIAL_CONSOLE
 #else
+#  if defined(CONFIG_SCI0_SERIAL_CONSOLE) || defined(CONFIG_SCI1_SERIAL_CONSOLE)
+#    error "Serial console selected, but corresponding SCI not enabled"
+#  endif
 #  undef HAVE_CONSOLE
 #endif
 
diff --git a/configs/us7032evb1/ostest/defconfig b/configs/us7032evb1/ostest/defconfig
index fa2ac1c48475aaac213de77436dfea9328bfca9e..4a56242c8d7b101dcc389bb0646b33735787d928 100644
--- a/configs/us7032evb1/ostest/defconfig
+++ b/configs/us7032evb1/ostest/defconfig
@@ -85,6 +85,20 @@ CONFIG_ARCH_STACKDUMP=y
 #
 # SH-1 specific boot/build settings
 #
+CONFIG_SH1_DMAC0=n
+CONFIG_SH1_DMAC1=n
+CONFIG_SH1_DMAC2=n
+CONFIG_SH1_DMAC3=n
+CONFIG_SH1_ITU1=n
+CONFIG_SH1_ITU2=n
+CONFIG_SH1_ITU3=n
+CONFIG_SH1_ITU4=n
+CONFIG_SH1_SCI0=y
+CONFIG_SH1_SCI1=y
+CONFIG_SH1_PCU=n
+CONFIG_SH1_AD=n
+CONFIG_SH1_WDT=n
+CONFIG_SH1_CMI=n
 
 #
 # SH1 specific device driver settings