From f7bbf9552e93a3fa9e5aa7c5cfed458b77b37695 Mon Sep 17 00:00:00 2001 From: Keith M Wesolowski Date: Tue, 1 Aug 2000 04:24:49 +0000 Subject: ARC console is not just for IP22. Timer dead code cleanup. --- arch/mips/arc/arc_con.c | 69 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 arch/mips/arc/arc_con.c (limited to 'arch/mips/arc/arc_con.c') diff --git a/arch/mips/arc/arc_con.c b/arch/mips/arc/arc_con.c new file mode 100644 index 000000000..6fe94a6c7 --- /dev/null +++ b/arch/mips/arc/arc_con.c @@ -0,0 +1,69 @@ +/* + * Wrap-around code for a console using the + * ARC io-routines. + * + * Copyright (c) 1998 Harald Koerfgen + */ + +#include +#include +#include +#include +#include +#include + +extern char prom_getchar (void); +extern void prom_printf (char *, ...); + +static void prom_console_write(struct console *co, const char *s, + unsigned count) +{ + unsigned i; + + /* + * Now, do each character + */ + for (i = 0; i < count; i++) { + if (*s == 10) + prom_printf("%c", 13); + prom_printf("%c", *s++); + } +} + +static int prom_console_wait_key(struct console *co) +{ + return prom_getchar(); +} + +static int __init prom_console_setup(struct console *co, char *options) +{ + return 0; +} + +static kdev_t prom_console_device(struct console *c) +{ + return MKDEV(TTY_MAJOR, 64 + c->index); +} + +static struct console arc_cons = { + "ttyS", + prom_console_write, + NULL, + prom_console_device, + prom_console_wait_key, + NULL, + prom_console_setup, + CON_PRINTBUFFER, + -1, + 0, + NULL +}; + +/* + * Register console. + */ + +void __init arc_console_init(void) +{ + register_console(&arc_cons); +} -- cgit v1.2.3