diff --git a/include/configs/tbs2910.h b/include/configs/tbs2910.h
index d3f53f3147773e834624ba23e92968bbfb0a9502..601347d9f801db19d54a78fa6fcc867a432d6af1 100644
--- a/include/configs/tbs2910.h
+++ b/include/configs/tbs2910.h
@@ -183,7 +183,13 @@
 #ifdef CONFIG_USB_KEYBOARD
 #define CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE
 #define CONFIG_SYS_STDIO_DEREGISTER
-#define CONFIG_PREBOOT "if hdmidet; then usb start; fi"
+#define CONFIG_PREBOOT \
+	"if hdmidet; then " \
+		"usb start; " \
+		"run set_con_usb_hdmi; " \
+	"else " \
+		"run set_con_serial; " \
+	"fi;"
 #endif /* CONFIG_USB_KEYBOARD */
 #endif /* CONFIG_CMD_USB      */
 
@@ -242,9 +248,12 @@
 			"bootm 0x10800000 0x10d00000\0" \
 	"console=ttymxc0\0" \
 	"fan=gpio set 92\0" \
-	"stdin=serial,usbkbd\0" \
-	"stdout=serial,vga\0" \
-	"stderr=serial,vga\0"
+	"set_con_serial=setenv stdin serial; " \
+			"setenv stdout serial; " \
+			"setenv stderr serial;\0" \
+	"set_con_usb_hdmi=setenv stdin serial,usbkbd; " \
+			"setenv stdout serial,vga; " \
+			"setenv stderr serial,vga;\0"
 
 #define CONFIG_BOOTCOMMAND \
 	"mmc rescan; " \