[PATCH 20/27] console: Share definition for printf with PBL

Andrey Smirnov andrew.smirnov at gmail.com
Thu Jun 14 21:11:29 PDT 2018


Both CONSOLE_* and PBL have almost identical implementations of
pritnf(). Move the code to a common location so it can be share
between the two.

Signed-off-by: Andrey Smirnov <andrew.smirnov at gmail.com>
---
 common/console_common.c | 22 ----------------------
 lib/console.c           | 24 +++++++++++++++++++++++-
 pbl/console.c           | 15 ---------------
 3 files changed, 23 insertions(+), 38 deletions(-)

diff --git a/common/console_common.c b/common/console_common.c
index 06ed74fc2..f440a9448 100644
--- a/common/console_common.c
+++ b/common/console_common.c
@@ -227,28 +227,6 @@ void log_print(unsigned flags)
 	}
 }
 
-int printf(const char *fmt, ...)
-{
-	va_list args;
-	int i;
-	char printbuffer[CFG_PBSIZE];
-
-	va_start(args, fmt);
-
-	/*
-	 * For this to work, printbuffer must be larger than
-	 * anything we ever want to print.
-	 */
-	i = vsprintf (printbuffer, fmt, args);
-	va_end(args);
-
-	/* Print the string */
-	puts(printbuffer);
-
-	return i;
-}
-EXPORT_SYMBOL(printf);
-
 int vprintf(const char *fmt, va_list args)
 {
 	int i;
diff --git a/lib/console.c b/lib/console.c
index 03563c9de..57c3578d6 100644
--- a/lib/console.c
+++ b/lib/console.c
@@ -215,4 +215,26 @@ __weak int ctrlc (void)
 		return 1;
 	return 0;
 }
-EXPORT_SYMBOL(ctrlc);
\ No newline at end of file
+EXPORT_SYMBOL(ctrlc);
+
+int printf(const char *fmt, ...)
+{
+	va_list args;
+	int i;
+	char printbuffer[CFG_PBSIZE];
+
+	va_start(args, fmt);
+
+	/*
+	 * For this to work, printbuffer must be larger than
+	 * anything we ever want to print.
+	 */
+	i = vsprintf(printbuffer, fmt, args);
+	va_end(args);
+
+	/* Print the string */
+	puts(printbuffer);
+
+	return i;
+}
+EXPORT_SYMBOL(printf);
\ No newline at end of file
diff --git a/pbl/console.c b/pbl/console.c
index 6c277052f..18df1efca 100644
--- a/pbl/console.c
+++ b/pbl/console.c
@@ -17,21 +17,6 @@ void pbl_set_putc(putc_func_t putcf, void *ctx)
 	__console_set_putc(&console_ll, putcf, ctx);
 }
 
-int printf(const char *fmt, ...)
-{
-	va_list args;
-	uint i;
-	char printbuffer[CFG_PBSIZE];
-
-	va_start(args, fmt);
-	i = vsprintf(printbuffer, fmt, args);
-	va_end(args);
-
-	console_puts(CONSOLE_STDOUT, printbuffer);
-
-	return i;
-}
-
 int pr_print(int level, const char *fmt, ...)
 {
 	va_list args;
-- 
2.17.0




More information about the barebox mailing list