diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2000-02-24 00:12:35 +0000 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2000-02-24 00:12:35 +0000 |
commit | 482368b1a8e45430672c58c9a42e7d2004367126 (patch) | |
tree | ce2a1a567d4d62dee7c2e71a46a99cf72cf1d606 /drivers/sbus/char/sunkbd.c | |
parent | e4d0251c6f56ab2e191afb70f80f382793e23f74 (diff) |
Merge with 2.3.47. Guys, this is buggy as shit. You've been warned.
Diffstat (limited to 'drivers/sbus/char/sunkbd.c')
-rw-r--r-- | drivers/sbus/char/sunkbd.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/drivers/sbus/char/sunkbd.c b/drivers/sbus/char/sunkbd.c index 7e26f3491..91bf24a18 100644 --- a/drivers/sbus/char/sunkbd.c +++ b/drivers/sbus/char/sunkbd.c @@ -24,6 +24,7 @@ #include <linux/delay.h> #include <linux/init.h> #include <linux/sysrq.h> +#include <linux/devfs_fs_kernel.h> #include <asm/kbio.h> #include <asm/vuid_event.h> @@ -507,7 +508,7 @@ void sunkbd_inchar(unsigned char ch, struct pt_regs *regs) } do_poke_blanked_console = 1; - mark_bh(CONSOLE_BH); + tasklet_schedule(&console_tasklet); add_keyboard_randomness(keycode); tty = ttytab? ttytab[fg_console]: NULL; @@ -616,7 +617,7 @@ static void put_queue(int ch) wake_up(&keypress_wait); if (tty) { tty_insert_flip_char(tty, ch, 0); - tty_schedule_flip(tty); + con_schedule_flip(tty); } } @@ -630,7 +631,7 @@ static void puts_queue(char *cp) tty_insert_flip_char(tty, *cp, 0); cp++; } - tty_schedule_flip(tty); + con_schedule_flip(tty); } static void applkey(int key, char mode) @@ -742,7 +743,7 @@ static void send_intr(void) if (!tty) return; tty_insert_flip_char(tty, 0, TTY_BREAK); - tty_schedule_flip(tty); + con_schedule_flip(tty); } static void scroll_forw(void) @@ -1549,7 +1550,11 @@ void __init keyboard_zsinit(void (*put_char)(unsigned char)) send_cmd(SKBDCMD_SETLED); send_cmd(0x0); /* All off */ /* Register the /dev/kbd interface */ - if (register_chrdev (KBD_MAJOR, "kbd", &kbd_fops)){ + devfs_register (NULL, "kbd", 0, DEVFS_FL_NONE, + KBD_MAJOR, 0, + S_IFCHR | S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH, 0, 0, + &kbd_fops, NULL); + if (devfs_register_chrdev (KBD_MAJOR, "kbd", &kbd_fops)){ printk ("Could not register /dev/kbd device\n"); return; } |