Messages in this thread Patch in this message | | | Date | Mon, 17 May 1999 10:26:42 -0700 (MST) | From | Matt Porter <> | Subject | console_init patch for kbdless systems |
| |
To me it's a bug but to others it will look like a non-feature. When both VT console and serial console support are built in to a kernel image, the kernel blindly attempts to initialize the keyboard before finding there is no normal VGA console and defaults to serial console support. This hangs the system on boards where there is no keyboard controller present.
I've attached a patch to tty_io.c that checks a vt console present flag before attempting to initialize a keyboard. That solves the problem as neatly as possible (AFAIKT). If anybody sees any problems with this patch please let me know...I'm hoping it can be included in 2.2.x.
-- Matt Porter mmporter@home.com
--- linux/drivers/char/tty_io.c.orig Fri May 14 14:01:39 1999 +++ linux/drivers/char/tty_io.c Mon May 17 08:48:16 1999 @@ -114,6 +114,7 @@ * is redirected to if asked by TIOCCONS. */ struct tty_struct * redirect = NULL; +static short vt_console_present = 1; static void initialize_tty_struct(struct tty_struct *tty); @@ -2023,6 +2024,8 @@ */ long __init console_init(long kmem_start, long kmem_end) { + long kmem_start_old; + /* Setup the default TTY line discipline. */ memset(ldiscs, 0, sizeof(ldiscs)); (void) tty_register_ldisc(N_TTY, &tty_ldisc_N_TTY); @@ -2044,7 +2047,13 @@ * inform about problems etc.. */ #ifdef CONFIG_VT + kmem_start_old = kmem_start; kmem_start = con_init(kmem_start); + if (kmem_start_old == kmem_start) + { + vt_console_present = 0; + printk("No VT console present...Configuring serial console.\n"); + } #endif #ifdef CONFIG_SERIAL_CONSOLE #ifdef CONFIG_8xx @@ -2128,7 +2137,8 @@ if (tty_register_driver(&dev_console_driver)) panic("Couldn't register /dev/tty0 driver\n"); - kbd_init(); + if (vt_console_present) + kbd_init(); #endif #ifdef CONFIG_ESPSERIAL /* init ESP before rs, so rs doesn't see the port */ espserial_init();
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |