Update of /cvsroot/linux-vax/kernel-2.5/drivers/char
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15018
Modified Files:
dz.c
Log Message:
- Fix dz.c for ldisc changes.
- Fix dz.c for updates to the SERIO subsystem.
- Flag the first two lines to hold a lkkbd or a vsxxx. In theory, this
should obsolete the need for inputattach (that is, it should now just
work (TM))
- Compile tested only (famous last words).
- Run test scheduled for tomorrow morning.
Index: dz.c
===================================================================
RCS file: /cvsroot/linux-vax/kernel-2.5/drivers/char/dz.c,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -d -r1.24 -r1.25
--- dz.c 8 Aug 2004 23:23:22 -0000 1.24
+++ dz.c 18 Nov 2004 21:21:20 -0000 1.25
@@ -1098,14 +1098,8 @@
info->event = 0;
info->tty = 0;
- if (tty->ldisc.num != ldiscs[N_TTY].num) {
- if (tty->ldisc.close)
- tty->ldisc.close(tty);
- tty->ldisc = ldiscs[N_TTY];
- tty->termios->c_line = N_TTY;
- if (tty->ldisc.open)
- tty->ldisc.open(tty);
- }
+ tty_ldisc_flush(tty);
+
if (info->blocked_open) {
if (info->close_delay) {
current->state = TASK_INTERRUPTIBLE;
@@ -1255,7 +1249,7 @@
static int
dz_serio_write (struct serio *serio, unsigned char one_byte)
{
- struct dz_serial *info = serio->driver;
+ struct dz_serial *info = serio->port_data;
unsigned long flags;
spin_lock_irqsave (&dz_serio_lock, flags);
@@ -1268,7 +1262,7 @@
static int
dz_serio_open (struct serio *serio)
{
- struct dz_serial *info = serio->driver;
+ struct dz_serial *info = serio->port_data;
unsigned long flags;
int ret;
@@ -1286,7 +1280,7 @@
static void
dz_serio_close (struct serio *serio)
{
- struct dz_serial *info = serio->driver;
+ struct dz_serial *info = serio->port_data;
unsigned long flags;
spin_lock_irqsave (&dz_serio_lock, flags);
@@ -1382,27 +1376,27 @@
#ifdef CONFIG_SERIO
memset(&info->serio, 0, sizeof(info->serio));
- info->serio.driver = info;
+ info->serio.port_data = info;
info->serio.type = SERIO_RS232;
switch (i) {
case DZ_KEYBOARD:
- /* info->serio.type |= SERIO_LKKBD; */
- info->serio.name = "dzkbd";
- info->serio.phys = "dz/line0";
+ info->serio.type |= SERIO_RS232 | SERIO_LKKBD;
+ sprintf (info->serio.name, "dzkbd");
+ sprintf (info->serio.phys, "dz/line0");
break;
case DZ_MOUSE:
- /* info->serio.type |= SERIO_VSXXXAA; */
- info->serio.name = "dzmouse";
- info->serio.phys = "dz/line1";
+ info->serio.type |= SERIO_RS232 | SERIO_VSXXXAA;
+ sprintf (info->serio.name, "dzmouse");
+ sprintf (info->serio.phys, "dz/line1");
break;
case DZ_MODEM:
- info->serio.name = "dz";
- info->serio.phys = "dz/line2";
+ sprintf (info->serio.name, "dz");
+ sprintf (info->serio.phys, "dz/line2");
break;
case DZ_PRINTER:
- info->serio.name = "dz";
- info->serio.phys = "dz/line3";
+ sprintf (info->serio.name, "dz");
+ sprintf (info->serio.phys, "dz/line3");
break;
}
|