summaryrefslogtreecommitdiff
path: root/src/console
diff options
context:
space:
mode:
authorKyösti Mälkki <kyosti.malkki@gmail.com>2014-02-04 19:03:57 +0200
committerPatrick Georgi <patrick@georgi-clan.de>2014-04-09 13:21:25 +0200
commit657e0be46495bb54ddf5a0fbad786fe352c2847f (patch)
tree3e4c5c4268d78078be1949d828800ae6c7196600 /src/console
parentb3356bbff42148094ada671d3a0a803f195542e6 (diff)
console: Move newline translation outside console_tx_byte
This gives us completely transparent low-level function to transmit data. Change-Id: I706791ff43d80a36a7252a4da0e6f3af92520db7 Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com> Reviewed-on: http://review.coreboot.org/5336 Tested-by: build bot (Jenkins) Reviewed-by: Patrick Georgi <patrick@georgi-clan.de>
Diffstat (limited to 'src/console')
-rw-r--r--src/console/console.c9
-rw-r--r--src/console/printk.c12
2 files changed, 11 insertions, 10 deletions
diff --git a/src/console/console.c b/src/console/console.c
index 1712877801..d5aadf6f32 100644
--- a/src/console/console.c
+++ b/src/console/console.c
@@ -48,7 +48,7 @@ void console_tx_flush(void)
}
}
-static void __console_tx_byte(unsigned char byte)
+void console_tx_byte(unsigned char byte)
{
struct console_driver *driver;
for(driver = console_drivers; driver < econsole_drivers; driver++) {
@@ -56,13 +56,6 @@ static void __console_tx_byte(unsigned char byte)
}
}
-void console_tx_byte(unsigned char byte)
-{
- if (byte == '\n')
- __console_tx_byte('\r');
- __console_tx_byte(byte);
-}
-
unsigned char console_rx_byte(void)
{
struct console_driver *driver;
diff --git a/src/console/printk.c b/src/console/printk.c
index c61f63e6a6..63d37cc044 100644
--- a/src/console/printk.c
+++ b/src/console/printk.c
@@ -13,6 +13,13 @@
DECLARE_SPIN_LOCK(console_lock)
+void do_putchar(unsigned char byte)
+{
+ if (byte == '\n')
+ console_tx_byte('\r');
+ console_tx_byte(byte);
+}
+
int do_printk(int msg_level, const char *fmt, ...)
{
va_list args;
@@ -30,7 +37,7 @@ int do_printk(int msg_level, const char *fmt, ...)
spin_lock(&console_lock);
va_start(args, fmt);
- i = vtxprintf(console_tx_byte, fmt, args);
+ i = vtxprintf(do_putchar, fmt, args);
va_end(args);
console_tx_flush();
@@ -44,7 +51,8 @@ int do_printk(int msg_level, const char *fmt, ...)
#if CONFIG_CHROMEOS
void do_vtxprintf(const char *fmt, va_list args)
{
- vtxprintf(console_tx_byte, fmt, args);
+ vtxprintf(do_putchar, fmt, args);
console_tx_flush();
}
#endif
+