[U-Boot,1/6] serial: Implement default_serial_puts()

Submitted by Marek Vasut on Oct. 7, 2012, 12:07 a.m.

Details

Message ID 1349568426-27219-2-git-send-email-marex@denx.de
State Accepted
Delegated to: Tom Rini
Headers show

Commit Message

Marek Vasut Oct. 7, 2012, 12:07 a.m.
U-Boot contains a lot of duplicit implementations of serial_puts()
call which just pipes single characters into the port in loop. Implement
function that does this behavior into common code, so others can make
easy use of it.

This function is called default_serial_puts() and it's sole purpose
is to call putc() in loop on the whole string passed to it.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Tom Rini <trini@ti.com>
---
 drivers/serial/serial.c |    7 +++++++
 include/serial.h        |    2 ++
 2 files changed, 9 insertions(+)

Comments

Tom Rini Oct. 17, 2012, 2:59 p.m.
On Sat, Oct 06, 2012 at 02:07:01PM -0000, Marek Vasut wrote:

> U-Boot contains a lot of duplicit implementations of serial_puts()
> call which just pipes single characters into the port in loop. Implement
> function that does this behavior into common code, so others can make
> easy use of it.
> 
> This function is called default_serial_puts() and it's sole purpose
> is to call putc() in loop on the whole string passed to it.
> 
> Signed-off-by: Marek Vasut <marex@denx.de>
> Cc: Marek Vasut <marek.vasut@gmail.com>
> Cc: Tom Rini <trini@ti.com>

This along with the rest of the series, applied to u-boot/master,
thanks!

Patch hide | download patch | download mbox

diff --git a/drivers/serial/serial.c b/drivers/serial/serial.c
index 9550cbd..da41cd5 100644
--- a/drivers/serial/serial.c
+++ b/drivers/serial/serial.c
@@ -271,6 +271,13 @@  void serial_puts(const char *s)
 	get_current()->puts(s);
 }
 
+void default_serial_puts(const char *s)
+{
+	struct serial_device *dev = get_current();
+	while (*s)
+		dev->putc(*s++);
+}
+
 #if CONFIG_POST & CONFIG_SYS_POST_UART
 static const int bauds[] = CONFIG_SYS_BAUDRATE_TABLE;
 
diff --git a/include/serial.h b/include/serial.h
index a8d23f5..14f863e 100644
--- a/include/serial.h
+++ b/include/serial.h
@@ -20,6 +20,8 @@  struct serial_device {
 	struct serial_device	*next;
 };
 
+void default_serial_puts(const char *s);
+
 extern struct serial_device serial_smc_device;
 extern struct serial_device serial_scc_device;
 extern struct serial_device *default_serial_console(void);