aboutsummaryrefslogtreecommitdiffstats
path: root/arch/mips/dec/promcon.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/mips/dec/promcon.c')
-rw-r--r--arch/mips/dec/promcon.c55
1 files changed, 55 insertions, 0 deletions
diff --git a/arch/mips/dec/promcon.c b/arch/mips/dec/promcon.c
new file mode 100644
index 000000000000..9f0972f5a702
--- /dev/null
+++ b/arch/mips/dec/promcon.c
@@ -0,0 +1,55 @@
1/*
2 * Wrap-around code for a console using the
3 * DECstation PROM io-routines.
4 *
5 * Copyright (c) 1998 Harald Koerfgen
6 */
7
8#include <linux/tty.h>
9#include <linux/ptrace.h>
10#include <linux/init.h>
11#include <linux/console.h>
12#include <linux/fs.h>
13
14#include <asm/dec/prom.h>
15
16static void prom_console_write(struct console *co, const char *s,
17 unsigned count)
18{
19 unsigned i;
20
21 /*
22 * Now, do each character
23 */
24 for (i = 0; i < count; i++) {
25 if (*s == 10)
26 prom_printf("%c", 13);
27 prom_printf("%c", *s++);
28 }
29}
30
31static int __init prom_console_setup(struct console *co, char *options)
32{
33 return 0;
34}
35
36static struct console sercons =
37{
38 .name = "ttyS",
39 .write = prom_console_write,
40 .setup = prom_console_setup,
41 .flags = CON_PRINTBUFFER,
42 .index = -1,
43};
44
45/*
46 * Register console.
47 */
48
49static int __init prom_console_init(void)
50{
51 register_console(&sercons);
52
53 return 0;
54}
55console_initcall(prom_console_init);