diff options
author | Stefan Reinauer <stefan.reinauer@coreboot.org> | 2016-04-14 17:43:06 -0700 |
---|---|---|
committer | Stefan Reinauer <stefan.reinauer@coreboot.org> | 2016-04-16 01:08:23 +0200 |
commit | 777028fd8ac4879164e18fb7b8716aac2b572b04 (patch) | |
tree | e21ec2d48322efd85964ff78d35e6c10626922b2 /payloads/libpayload/drivers/serial/8250.c | |
parent | 88352d736590590aafc2c0eba770b467fb1a49aa (diff) |
libpayload: Split off generic serial API from 8250 driver
There is a lot of generic code in the 8250 driver that should
be available for non-8250 systems with serial ports as well.
Change-Id: I67fcb12b5fa99ae0047b3cbf1815043d3919437e
Signed-off-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Reviewed-on: https://review.coreboot.org/14371
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>
Diffstat (limited to 'payloads/libpayload/drivers/serial/8250.c')
-rw-r--r-- | payloads/libpayload/drivers/serial/8250.c | 90 |
1 files changed, 0 insertions, 90 deletions
diff --git a/payloads/libpayload/drivers/serial/8250.c b/payloads/libpayload/drivers/serial/8250.c index 0386f23a57..1fcf36dee6 100644 --- a/payloads/libpayload/drivers/serial/8250.c +++ b/payloads/libpayload/drivers/serial/8250.c @@ -169,93 +169,3 @@ int serial_getchar(void) while (!serial_havechar()) ; return serial_read_reg(0x00); } - -/* These are thinly veiled vt100 functions used by curses */ - -#define VT100_CLEAR "\e[H\e[J" -/* These defines will fail if you use bold and reverse at the same time. - * Switching off one of them will switch off both. tinycurses knows about - * this and does the right thing. - */ -#define VT100_SBOLD "\e[1m" -#define VT100_EBOLD "\e[m" -#define VT100_SREVERSE "\e[7m" -#define VT100_EREVERSE "\e[m" -#define VT100_CURSOR_ADDR "\e[%d;%dH" -#define VT100_CURSOR_ON "\e[?25l" -#define VT100_CURSOR_OFF "\e[?25h" -/* The following smacs/rmacs are actually for xterm; a real vt100 has - enacs=\E(B\E)0, smacs=^N, rmacs=^O. */ -#define VT100_SMACS "\e(0" -#define VT100_RMACS "\e(B" -/* A vt100 doesn't do color, setaf/setab below are from xterm-color. */ -#define VT100_SET_COLOR "\e[3%d;4%dm" - -static void serial_putcmd(const char *str) -{ - while (*str) - serial_putchar(*(str++)); -} - -void serial_clear(void) -{ - serial_putcmd(VT100_CLEAR); -} - -void serial_start_bold(void) -{ - serial_putcmd(VT100_SBOLD); -} - -void serial_end_bold(void) -{ - serial_putcmd(VT100_EBOLD); -} - -void serial_start_reverse(void) -{ - serial_putcmd(VT100_SREVERSE); -} - -void serial_end_reverse(void) -{ - serial_putcmd(VT100_EREVERSE); -} - -void serial_start_altcharset(void) -{ - serial_putcmd(VT100_SMACS); -} - -void serial_end_altcharset(void) -{ - serial_putcmd(VT100_RMACS); -} - -/** - * Set the foreground and background colors on the serial console. - * - * @param fg Foreground color number. - * @param bg Background color number. - */ -void serial_set_color(short fg, short bg) -{ - char buffer[32]; - snprintf(buffer, sizeof(buffer), VT100_SET_COLOR, fg, bg); - serial_putcmd(buffer); -} - -void serial_set_cursor(int y, int x) -{ - char buffer[32]; - snprintf(buffer, sizeof(buffer), VT100_CURSOR_ADDR, y + 1, x + 1); - serial_putcmd(buffer); -} - -void serial_cursor_enable(int state) -{ - if (state) - serial_putcmd(VT100_CURSOR_ON); - else - serial_putcmd(VT100_CURSOR_OFF); -} |