Lines Matching refs:tty

178 static void isicom_start(struct tty_struct *tty);
408 struct tty_struct *tty; in isicom_tx() local
435 tty = tty_port_tty_get(&port->port); in isicom_tx()
436 if (tty == NULL) in isicom_tx()
446 if (txcount <= 0 || tty->stopped || tty->hw_stopped) in isicom_tx()
499 tty_wakeup(tty); in isicom_tx()
503 tty_kref_put(tty); in isicom_tx()
519 struct tty_struct *tty; in isicom_interrupt() local
562 tty = tty_port_tty_get(&port->port); in isicom_interrupt()
563 if (tty == NULL) { in isicom_interrupt()
587 tty_hangup(tty); in isicom_interrupt()
604 if (tty->hw_stopped) { in isicom_interrupt()
606 tty->hw_stopped = 0; in isicom_interrupt()
610 tty_wakeup(tty); in isicom_interrupt()
613 tty->hw_stopped = 1; in isicom_interrupt()
639 do_SAK(tty); in isicom_interrupt()
678 tty_kref_put(tty); in isicom_interrupt()
683 static void isicom_config_port(struct tty_struct *tty) in isicom_config_port() argument
685 struct isi_port *port = tty->driver_data; in isicom_config_port()
694 baud = C_BAUD(tty); in isicom_config_port()
705 tty->termios.c_cflag &= ~CBAUDEX; in isicom_config_port()
736 switch (C_CSIZE(tty)) { in isicom_config_port()
751 if (C_CSTOPB(tty)) in isicom_config_port()
753 if (C_PARENB(tty)) { in isicom_config_port()
755 if (C_PARODD(tty)) in isicom_config_port()
761 if (C_CLOCAL(tty)) in isicom_config_port()
769 if (C_CRTSCTS(tty)) { in isicom_config_port()
773 if (I_IXON(tty)) in isicom_config_port()
775 if (I_IXOFF(tty)) in isicom_config_port()
781 outw((STOP_CHAR(tty)) << 8 | (START_CHAR(tty)), base); in isicom_config_port()
786 if (C_CREAD(tty)) { in isicom_config_port()
811 static int isicom_activate(struct tty_port *tport, struct tty_struct *tty) in isicom_activate() argument
832 isicom_config_port(tty); in isicom_activate()
844 static struct tty_port *isicom_find_port(struct tty_struct *tty) in isicom_find_port() argument
849 int line = tty->index; in isicom_find_port()
862 if (isicom_paranoia_check(port, tty->name, "isicom_open")) in isicom_find_port()
868 static int isicom_open(struct tty_struct *tty, struct file *filp) in isicom_open() argument
873 tport = isicom_find_port(tty); in isicom_open()
878 tty->driver_data = port; in isicom_open()
879 return tty_port_open(tport, tty, filp); in isicom_open()
899 static void isicom_flush_buffer(struct tty_struct *tty) in isicom_flush_buffer() argument
901 struct isi_port *port = tty->driver_data; in isicom_flush_buffer()
905 if (isicom_paranoia_check(port, tty->name, "isicom_flush_buffer")) in isicom_flush_buffer()
912 tty_wakeup(tty); in isicom_flush_buffer()
931 static void isicom_close(struct tty_struct *tty, struct file *filp) in isicom_close() argument
933 struct isi_port *ip = tty->driver_data; in isicom_close()
940 if (isicom_paranoia_check(ip, tty->name, "isicom_close")) in isicom_close()
942 tty_port_close(port, tty, filp); in isicom_close()
946 static int isicom_write(struct tty_struct *tty, const unsigned char *buf, in isicom_write() argument
949 struct isi_port *port = tty->driver_data; in isicom_write()
954 if (isicom_paranoia_check(port, tty->name, "isicom_write")) in isicom_write()
973 if (port->xmit_cnt && !tty->stopped && !tty->hw_stopped) in isicom_write()
980 static int isicom_put_char(struct tty_struct *tty, unsigned char ch) in isicom_put_char() argument
982 struct isi_port *port = tty->driver_data; in isicom_put_char()
986 if (isicom_paranoia_check(port, tty->name, "isicom_put_char")) in isicom_put_char()
1003 static void isicom_flush_chars(struct tty_struct *tty) in isicom_flush_chars() argument
1005 struct isi_port *port = tty->driver_data; in isicom_flush_chars()
1007 if (isicom_paranoia_check(port, tty->name, "isicom_flush_chars")) in isicom_flush_chars()
1010 if (port->xmit_cnt <= 0 || tty->stopped || tty->hw_stopped || in isicom_flush_chars()
1020 static int isicom_write_room(struct tty_struct *tty) in isicom_write_room() argument
1022 struct isi_port *port = tty->driver_data; in isicom_write_room()
1025 if (isicom_paranoia_check(port, tty->name, "isicom_write_room")) in isicom_write_room()
1035 static int isicom_chars_in_buffer(struct tty_struct *tty) in isicom_chars_in_buffer() argument
1037 struct isi_port *port = tty->driver_data; in isicom_chars_in_buffer()
1038 if (isicom_paranoia_check(port, tty->name, "isicom_chars_in_buffer")) in isicom_chars_in_buffer()
1044 static int isicom_send_break(struct tty_struct *tty, int length) in isicom_send_break() argument
1046 struct isi_port *port = tty->driver_data; in isicom_send_break()
1065 static int isicom_tiocmget(struct tty_struct *tty) in isicom_tiocmget() argument
1067 struct isi_port *port = tty->driver_data; in isicom_tiocmget()
1071 if (isicom_paranoia_check(port, tty->name, "isicom_ioctl")) in isicom_tiocmget()
1082 static int isicom_tiocmset(struct tty_struct *tty, in isicom_tiocmset() argument
1085 struct isi_port *port = tty->driver_data; in isicom_tiocmset()
1088 if (isicom_paranoia_check(port, tty->name, "isicom_ioctl")) in isicom_tiocmset()
1106 static int isicom_set_serial_info(struct tty_struct *tty, in isicom_set_serial_info() argument
1109 struct isi_port *port = tty->driver_data; in isicom_set_serial_info()
1139 isicom_config_port(tty); in isicom_set_serial_info()
1167 static int isicom_ioctl(struct tty_struct *tty, in isicom_ioctl() argument
1170 struct isi_port *port = tty->driver_data; in isicom_ioctl()
1173 if (isicom_paranoia_check(port, tty->name, "isicom_ioctl")) in isicom_ioctl()
1181 return isicom_set_serial_info(tty, argp); in isicom_ioctl()
1190 static void isicom_set_termios(struct tty_struct *tty, in isicom_set_termios() argument
1193 struct isi_port *port = tty->driver_data; in isicom_set_termios()
1196 if (isicom_paranoia_check(port, tty->name, "isicom_set_termios")) in isicom_set_termios()
1199 if (tty->termios.c_cflag == old_termios->c_cflag && in isicom_set_termios()
1200 tty->termios.c_iflag == old_termios->c_iflag) in isicom_set_termios()
1204 isicom_config_port(tty); in isicom_set_termios()
1208 !(tty->termios.c_cflag & CRTSCTS)) { in isicom_set_termios()
1209 tty->hw_stopped = 0; in isicom_set_termios()
1210 isicom_start(tty); in isicom_set_termios()
1215 static void isicom_throttle(struct tty_struct *tty) in isicom_throttle() argument
1217 struct isi_port *port = tty->driver_data; in isicom_throttle()
1220 if (isicom_paranoia_check(port, tty->name, "isicom_throttle")) in isicom_throttle()
1229 static void isicom_unthrottle(struct tty_struct *tty) in isicom_unthrottle() argument
1231 struct isi_port *port = tty->driver_data; in isicom_unthrottle()
1234 if (isicom_paranoia_check(port, tty->name, "isicom_unthrottle")) in isicom_unthrottle()
1243 static void isicom_stop(struct tty_struct *tty) in isicom_stop() argument
1245 struct isi_port *port = tty->driver_data; in isicom_stop()
1247 if (isicom_paranoia_check(port, tty->name, "isicom_stop")) in isicom_stop()
1256 static void isicom_start(struct tty_struct *tty) in isicom_start() argument
1258 struct isi_port *port = tty->driver_data; in isicom_start()
1260 if (isicom_paranoia_check(port, tty->name, "isicom_start")) in isicom_start()
1268 static void isicom_hangup(struct tty_struct *tty) in isicom_hangup() argument
1270 struct isi_port *port = tty->driver_data; in isicom_hangup()
1272 if (isicom_paranoia_check(port, tty->name, "isicom_hangup")) in isicom_hangup()