console: Squelch pre-console output in console functions

There are some locations in the code which anticipate printf() being called
before the console is ready by squelching printf() on gd->have_console.
Move this squelching into printf(), vprintf(), puts() and putc(). Also
make tstc() and getc() return 0 if console is not yet initialised

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
Tested-by: Simon Glass <sjg@chromium.org>
diff --git a/common/console.c b/common/console.c
index 8c650e0..b23d933 100644
--- a/common/console.c
+++ b/common/console.c
@@ -298,6 +298,9 @@
 		return 0;
 #endif
 
+	if (!gd->have_console)
+		return 0;
+
 	if (gd->flags & GD_FLG_DEVINIT) {
 		/* Get from the standard input */
 		return fgetc(stdin);
@@ -314,6 +317,9 @@
 		return 0;
 #endif
 
+	if (!gd->have_console)
+		return 0;
+
 	if (gd->flags & GD_FLG_DEVINIT) {
 		/* Test the standard input */
 		return ftstc(stdin);
@@ -335,6 +341,9 @@
 		return;
 #endif
 
+	if (!gd->have_console)
+		return;
+
 	if (gd->flags & GD_FLG_DEVINIT) {
 		/* Send to the standard output */
 		fputc(stdout, c);
@@ -356,6 +365,9 @@
 		return;
 #endif
 
+	if (!gd->have_console)
+		return;
+
 	if (gd->flags & GD_FLG_DEVINIT) {
 		/* Send to the standard output */
 		fputs(stdout, s);
@@ -371,6 +383,9 @@
 	uint i;
 	char printbuffer[CONFIG_SYS_PBSIZE];
 
+	if (!gd->have_console)
+		return 0;
+
 	va_start(args, fmt);
 
 	/* For this to work, printbuffer must be larger than
@@ -389,6 +404,9 @@
 	uint i;
 	char printbuffer[CONFIG_SYS_PBSIZE];
 
+	if (!gd->have_console)
+		return 0;
+
 	/* For this to work, printbuffer must be larger than
 	 * anything we ever want to print.
 	 */