]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - common/console.c
console: Squelch pre-console output in console functions
[karo-tx-uboot.git] / common / console.c
index 8c650e05e1c352ff5406b576387cb25dd2f5dd35..b23d933d2c35742521c34aad25852b2f553ac4c6 100644 (file)
@@ -298,6 +298,9 @@ int getc(void)
                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 @@ int tstc(void)
                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 @@ void putc(const char c)
                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 @@ void puts(const char *s)
                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 @@ int printf(const char *fmt, ...)
        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 @@ int vprintf(const char *fmt, va_list args)
        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.
         */