Update of /cvsroot/linuxconsole/ruby/linux/drivers/char
In directory usw-pr-cvs1:/tmp/cvs-serv5434/drivers/char
Modified Files:
tty_io.c vt.c
Log Message:
Start of reworking the console lock.
Index: tty_io.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/char/tty_io.c,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -d -r1.38 -r1.39
--- tty_io.c 2001/11/23 04:10:15 1.38
+++ tty_io.c 2001/12/06 23:32:50 1.39
@@ -100,14 +100,7 @@
#ifdef CONFIG_VT
#include <linux/vt_kern.h>
-extern void con_init_devfs (void);
-#ifdef CONFIG_PROM_CONSOLE
-extern void prom_con_init(void);
#endif
-#ifdef CONFIG_FRAMEBUFFER_CONSOLE
-extern void fb_console_init(void);
-#endif
-#endif
#define TTY_DEV MKDEV(TTYAUX_MAJOR,0)
#define SYSCONS_DEV MKDEV(TTYAUX_MAJOR,1)
@@ -2307,15 +2300,7 @@
#endif
#ifdef CONFIG_VT
-#if defined (CONFIG_PROM_CONSOLE)
- prom_con_init();
-#endif
-#if defined (CONFIG_FRAMEBUFFER_CONSOLE)
- fb_console_init();
-#endif
- kbd_init();
- console_map_init();
- vcs_init();
+ vty_init();
#endif
#ifdef CONFIG_ESPSERIAL /* init ESP before rs, so rs doesn't see the port */
espserial_init();
Index: vt.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/char/vt.c,v
retrieving revision 1.110
retrieving revision 1.111
diff -u -d -r1.110 -r1.111
--- vt.c 2001/10/29 00:10:59 1.110
+++ vt.c 2001/12/06 23:32:50 1.111
@@ -54,6 +54,12 @@
#ifdef CONFIG_MDA_CONSOLE
extern void mda_console_init(void);
#endif
+#if defined (CONFIG_PROM_CONSOLE)
+extern void prom_con_init(void);
+#endif
+#if defined (CONFIG_FRAMEBUFFER_CONSOLE)
+extern void fb_console_init(void);
+#endif
#ifndef MIN
#define MIN(a,b) ((a) < (b) ? (a) : (b))
@@ -1544,6 +1550,12 @@
vt->default_mode->display_fg = vt;
vt->vc_cons[0] = vc_allocate(current_vc);
vt->keyboard = NULL;
+
+ init_timer(&vt->timer);
+ vt->timer.data = (long) vt;
+ vt->timer.function = blank_screen;
+ mod_timer(&vt->timer, jiffies + vt->blank_interval);
+ INIT_TQUEUE(&vt->vt_tq, vt_callback, vt);
if (!admin_vt) {
struct vc_data *vc = vt->vc_cons[0];
@@ -1556,11 +1568,6 @@
vte_ed(vt->vc_cons[0], 0);
update_screen(vt->vc_cons[0]);
}
- init_timer(&vt->timer);
- vt->timer.data = (long) vt;
- vt->timer.function = blank_screen;
- mod_timer(&vt->timer, jiffies + vt->blank_interval);
- INIT_TQUEUE(&vt->vt_tq, vt_callback, vt);
current_vc += MAX_NR_USER_CONSOLES;
return display_desc;
}
@@ -1583,6 +1590,20 @@
#if defined(CONFIG_MDA_CONSOLE)
mda_console_init();
#endif
+}
+
+int __init vty_init(void)
+{
+#if defined (CONFIG_PROM_CONSOLE)
+ prom_con_init();
+#endif
+#if defined (CONFIG_FRAMEBUFFER_CONSOLE)
+ fb_console_init();
+#endif
+ kbd_init();
+ console_map_init();
+ vcs_init();
+ return 0;
}
static void clear_buffer_attributes(struct vc_data *vc)
|