|
@@ -178,6 +178,20 @@ static void cpc_tty_signal_on(pc300dev_t *pc300dev, unsigned char signal)
|
|
|
CPC_TTY_UNLOCK(card,flags);
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+static const struct tty_operations pc300_ops = {
|
|
|
+ .open = cpc_tty_open,
|
|
|
+ .close = cpc_tty_close,
|
|
|
+ .write = cpc_tty_write,
|
|
|
+ .write_room = cpc_tty_write_room,
|
|
|
+ .chars_in_buffer = cpc_tty_chars_in_buffer,
|
|
|
+ .tiocmset = pc300_tiocmset,
|
|
|
+ .tiocmget = pc300_tiocmget,
|
|
|
+ .flush_buffer = cpc_tty_flush_buffer,
|
|
|
+ .hangup = cpc_tty_hangup,
|
|
|
+};
|
|
|
+
|
|
|
+
|
|
|
/*
|
|
|
* PC300 TTY initialization routine
|
|
|
*
|
|
@@ -225,15 +239,7 @@ void cpc_tty_init(pc300dev_t *pc300dev)
|
|
|
serial_drv.flags = TTY_DRIVER_REAL_RAW;
|
|
|
|
|
|
/* interface routines from the upper tty layer to the tty driver */
|
|
|
- serial_drv.open = cpc_tty_open;
|
|
|
- serial_drv.close = cpc_tty_close;
|
|
|
- serial_drv.write = cpc_tty_write;
|
|
|
- serial_drv.write_room = cpc_tty_write_room;
|
|
|
- serial_drv.chars_in_buffer = cpc_tty_chars_in_buffer;
|
|
|
- serial_drv.tiocmset = pc300_tiocmset;
|
|
|
- serial_drv.tiocmget = pc300_tiocmget;
|
|
|
- serial_drv.flush_buffer = cpc_tty_flush_buffer;
|
|
|
- serial_drv.hangup = cpc_tty_hangup;
|
|
|
+ tty_set_operations(&serial_drv, &pc300_ops);
|
|
|
|
|
|
/* register the TTY driver */
|
|
|
if (tty_register_driver(&serial_drv)) {
|