Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
promcon.c
Go to the documentation of this file.
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 
16 static 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 
31 static int __init prom_console_setup(struct console *co, char *options)
32 {
33  return 0;
34 }
35 
36 static struct console sercons = {
37  .name = "ttyS",
38  .write = prom_console_write,
39  .setup = prom_console_setup,
40  .flags = CON_PRINTBUFFER,
41  .index = -1,
42 };
43 
44 /*
45  * Register console.
46  */
47 
48 static int __init prom_console_init(void)
49 {
50  register_console(&sercons);
51 
52  return 0;
53 }
54 console_initcall(prom_console_init);