9 #include <linux/types.h>
11 #include <linux/kdev_t.h>
13 #include <linux/string.h>
14 #include <linux/sched.h>
15 #include <linux/list.h>
18 #include <linux/slab.h>
20 #include <asm/current.h>
30 static void stdio_announce(
char *dev_name,
int dev)
38 .announce = stdio_announce,
39 .xterm_title =
"Virtual Console #%d",
43 static int con_config(
char *
str,
char **error_out);
44 static int con_get_config(
char *
dev,
char *
str,
int size,
char **error_out);
45 static int con_remove(
int n,
char **con_remove);
50 .name =
"UML console",
57 .read_irq_name =
"console",
59 .write_irq_name =
"console-write",
64 .get_config = con_get_config,
74 static char *def_conf;
77 static int con_config(
char *
str,
char **error_out)
82 static int con_get_config(
char *
dev,
char *str,
int size,
char **error_out)
87 static int con_remove(
int n,
char **error_out)
93 static int con_init_done = 0;
102 .install = con_install,
117 static void uml_console_write(
struct console *
console,
const char *
string,
125 spin_unlock_irqrestore(&line->
lock, flags);
142 static struct console stdiocons = {
144 .write = uml_console_write,
145 .device = uml_console_device,
146 .setup = uml_console_setup,
151 static int stdio_init(
void)
165 if(new_title !=
NULL)
170 char *
s = vt_conf[
i];
174 s = i ? CONFIG_CON_CHAN : CONFIG_CON_ZERO_CHAN;
177 "device %d : %s\n", i, error);
186 static void console_exit(
void)
194 static int console_chan_setup(
char *str)
196 line_setup(vt_conf, MAX_TTYS, &def_conf, str,
"console");
199 __setup(
"con", console_chan_setup);