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>
This commit is contained in:
Kyösti Mälkki
2014-02-04 19:03:57 +02:00
committed by Patrick Georgi
parent b3356bbff4
commit 657e0be464
9 changed files with 22 additions and 29 deletions

View File

@ -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