x86, um: get rid of excessive includes of uml-config.h
[safe/jmp/linux-2.6] / arch / um / drivers / stdio_console.c
index 7ff0b0f..49266f6 100644 (file)
@@ -22,8 +22,6 @@
 #include "stdio_console.h"
 #include "line.h"
 #include "chan_kern.h"
-#include "user_util.h"
-#include "kern_util.h"
 #include "irq_user.h"
 #include "mconsole_kern.h"
 #include "init.h"
@@ -36,7 +34,7 @@
 
 static struct tty_driver *console_driver;
 
-void stdio_announce(char *dev_name, int dev)
+static void stdio_announce(char *dev_name, int dev)
 {
        printk(KERN_INFO "Virtual console %d assigned device '%s'\n", dev,
               dev_name);
@@ -47,8 +45,6 @@ static struct chan_opts opts = {
        .announce       = stdio_announce,
        .xterm_title    = "Virtual Console #%d",
        .raw            = 1,
-       .tramp_stack    = 0,
-       .in_kernel      = 1,
 };
 
 static int con_config(char *str, char **error_out);
@@ -102,7 +98,12 @@ static int con_remove(int n, char **error_out)
 
 static int con_open(struct tty_struct *tty, struct file *filp)
 {
-       return line_open(vts, tty);
+       int err = line_open(vts, tty);
+       if (err)
+               printk(KERN_ERR "Failed to open console %d, err = %d\n",
+                      tty->index, err);
+
+       return err;
 }
 
 /* Set in an initcall, checked in an exitcall */
@@ -153,11 +154,11 @@ static struct console stdiocons = {
        .write          = uml_console_write,
        .device         = uml_console_device,
        .setup          = uml_console_setup,
-       .flags          = CON_PRINTBUFFER,
+       .flags          = CON_PRINTBUFFER|CON_ANYTIME,
        .index          = -1,
 };
 
-int stdio_init(void)
+static int stdio_init(void)
 {
        char *new_title;
 
@@ -167,12 +168,12 @@ int stdio_init(void)
                return -1;
        printk(KERN_INFO "Initialized stdio console driver\n");
 
-       lines_init(vts, ARRAY_SIZE(vts), &opts);
-
        new_title = add_xterm_umid(opts.xterm_title);
        if(new_title != NULL)
                opts.xterm_title = new_title;
 
+       lines_init(vts, ARRAY_SIZE(vts), &opts);
+
        con_init_done = 1;
        register_console(&stdiocons);
        return 0;