Home
last modified time | relevance | path

Searched refs:tty (Results 1 – 25 of 247) sorted by relevance

12345678910

/linux/include/linux/
H A Dtty.h34 #define INTR_CHAR(tty) ((tty)->termios.c_cc[VINTR]) argument
35 #define QUIT_CHAR(tty) ((tty)->termios.c_cc[VQUIT]) argument
36 #define ERASE_CHAR(tty) ((tty)->termios.c_cc[VERASE]) argument
37 #define KILL_CHAR(tty) ((tty)->termios.c_cc[VKILL]) argument
38 #define EOF_CHAR(tty) ((tty)->termios.c_cc[VEOF]) argument
39 #define TIME_CHAR(tty) ((tty)->termios.c_cc[VTIME]) argument
40 #define MIN_CHAR(tty) ((tty)->termios.c_cc[VMIN]) argument
41 #define SWTC_CHAR(tty) ((tty)->termios.c_cc[VSWTC]) argument
42 #define START_CHAR(tty) ((tty)->termios.c_cc[VSTART]) argument
43 #define STOP_CHAR(tty) ((tty)->termios.c_cc[VSTOP]) argument
[all …]
H A Dtty_driver.h20 * struct tty_operations -- interface between driver and tty
25 * Return the tty device corresponding to @idx, %NULL if there is not
31 * @install: ``int ()(struct tty_driver *self, struct tty_struct *tty)``
33 * Install a new @tty into the @self's internal tables. Used in
38 * @remove: ``void ()(struct tty_driver *self, struct tty_struct *tty)``
40 * Remove a closed @tty from the @self's internal tables. Used in
45 * @open: ``int ()(struct tty_struct *tty, struct file *)``
47 * This routine is called when a particular @tty device is opened. This
51 * Required method. Called with tty lock held. May sleep.
53 * @close: ``void ()(struct tty_struct *tty, struc
[all...]
H A Dtty_ldisc.h238 int (*open)(struct tty_struct *tty);
239 void (*close)(struct tty_struct *tty);
240 void (*flush_buffer)(struct tty_struct *tty);
241 ssize_t (*read)(struct tty_struct *tty, struct file *file, u8 *buf,
243 ssize_t (*write)(struct tty_struct *tty, struct file *file,
245 int (*ioctl)(struct tty_struct *tty, unsigned int cmd,
247 int (*compat_ioctl)(struct tty_struct *tty, unsigned int cmd,
249 void (*set_termios)(struct tty_struct *tty, const struct ktermios *old);
250 __poll_t (*poll)(struct tty_struct *tty, struct file *file,
252 void (*hangup)(struct tty_struct *tty);
[all …]
/linux/drivers/tty/
H A Dtty_io.c116 # define tty_debug_hangup(tty, f, args...) tty_debug(tty, f, ##args) argument
118 # define tty_debug_hangup(tty, f, args...) do { } while (0) argument
159 static void release_tty(struct tty_struct *tty, int idx);
169 static void free_tty_struct(struct tty_struct *tty) in free_tty_struct() argument
171 tty_ldisc_deinit(tty); in free_tty_struct()
172 put_device(tty->dev); in free_tty_struct()
173 kvfree(tty->write_buf); in free_tty_struct()
174 kfree(tty); in free_tty_struct()
179 return ((struct tty_file_private *)file->private_data)->tty; in file_tty()
196 void tty_add_file(struct tty_struct *tty, struct file *file) in tty_add_file() argument
[all …]
H A Dtty_ioctl.c48 unsigned int tty_chars_in_buffer(struct tty_struct *tty) in tty_chars_in_buffer() argument
50 if (tty->ops->chars_in_buffer) in tty_chars_in_buffer()
51 return tty->ops->chars_in_buffer(tty); in tty_chars_in_buffer()
66 unsigned int tty_write_room(struct tty_struct *tty) in tty_write_room() argument
68 if (tty->ops->write_room) in tty_write_room()
69 return tty->ops->write_room(tty); in tty_write_room()
82 void tty_driver_flush_buffer(struct tty_struct *tty) in tty_driver_flush_buffer() argument
84 if (tty->ops->flush_buffer) in tty_driver_flush_buffer()
85 tty->ops->flush_buffer(tty); in tty_driver_flush_buffer()
101 void tty_unthrottle(struct tty_struct *tty) in tty_unthrottle() argument
[all …]
H A Dpty.c36 # define tty_debug_hangup(tty, f, args...) tty_debug(tty, f, ##args) argument
38 # define tty_debug_hangup(tty, f, args...) do {} while (0) argument
47 static void pty_close(struct tty_struct *tty, struct file *filp) in pty_close() argument
49 if (tty->driver->subtype == PTY_TYPE_MASTER) in pty_close()
50 WARN_ON(tty->count > 1); in pty_close()
52 if (tty_io_error(tty)) in pty_close()
54 if (tty->count > 2) in pty_close()
57 set_bit(TTY_IO_ERROR, &tty->flags); in pty_close()
58 wake_up_interruptible(&tty->read_wait); in pty_close()
59 wake_up_interruptible(&tty->write_wait); in pty_close()
[all …]
H A Dtty_jobctrl.c33 int __tty_check_change(struct tty_struct *tty, int sig) in __tty_check_change() argument
39 if (current->signal->tty != tty) in __tty_check_change()
45 spin_lock_irqsave(&tty->ctrl.lock, flags); in __tty_check_change()
46 tty_pgrp = tty->ctrl.pgrp; in __tty_check_change()
47 spin_unlock_irqrestore(&tty->ctrl.lock, flags); in __tty_check_change()
64 tty_warn(tty, "sig=%d, tty->pgrp == NULL!\n", sig); in __tty_check_change()
69 int tty_check_change(struct tty_struct *tty) in tty_check_change() argument
71 return __tty_check_change(tty, SIGTTOU); in tty_check_change()
78 struct tty_struct *tty; in proc_clear_tty() local
81 tty = p->signal->tty; in proc_clear_tty()
[all …]
H A Dtty.h9 #define tty_msg(fn, tty, f, ...) \ argument
10 fn("%s %s: " f, tty_driver_name(tty), tty_name(tty), ##__VA_ARGS__)
12 #define tty_debug(tty, f, ...) tty_msg(pr_debug, tty, f, ##__VA_ARGS__) argument
13 #define tty_notice(tty, f, ...) tty_msg(pr_notice, tty, f, ##__VA_ARGS__) argument
14 #define tty_warn(tty, f, ...) tty_msg(pr_warn, tty, f, ##__VA_ARGS__) argument
15 #define tty_err(tty, f, ...) tty_msg(pr_err, tty, f, ##__VA_ARGS__) argument
17 #define tty_info_ratelimited(tty, f, ...) \ argument
18 tty_msg(pr_info_ratelimited, tty, f, ##__VA_ARGS__)
50 static inline void __tty_set_flow_change(struct tty_struct *tty, in __tty_set_flow_change() argument
53 tty->flow_change = val; in __tty_set_flow_change()
[all …]
H A Dtty_mutex.c15 void tty_lock(struct tty_struct *tty) in tty_lock() argument
17 tty_kref_get(tty); in tty_lock()
18 mutex_lock(&tty->legacy_mutex); in tty_lock()
22 int tty_lock_interruptible(struct tty_struct *tty) in tty_lock_interruptible() argument
26 tty_kref_get(tty); in tty_lock_interruptible()
27 ret = mutex_lock_interruptible(&tty->legacy_mutex); in tty_lock_interruptible()
29 tty_kref_put(tty); in tty_lock_interruptible()
33 void tty_unlock(struct tty_struct *tty) in tty_unlock() argument
35 mutex_unlock(&tty->legacy_mutex); in tty_unlock()
36 tty_kref_put(tty); in tty_unlock()
[all …]
H A Dtty_port.c26 struct tty_struct *tty; in tty_port_default_receive_buf() local
29 tty = READ_ONCE(port->itty); in tty_port_default_receive_buf()
30 if (!tty) in tty_port_default_receive_buf()
33 ld = tty_ldisc_ref(tty); in tty_port_default_receive_buf()
47 struct tty_struct *tty; in tty_port_default_lookahead_buf() local
50 tty = READ_ONCE(port->itty); in tty_port_default_lookahead_buf()
51 if (!tty) in tty_port_default_lookahead_buf()
54 ld = tty_ldisc_ref(tty); in tty_port_default_lookahead_buf()
59 ld->ops->lookahead_buf(ld->tty, p, f, count); in tty_port_default_lookahead_buf()
66 struct tty_struct *tty = tty_port_tty_get(port); in tty_port_default_wakeup() local
[all …]
H A Damiserial.c96 static void change_speed(struct tty_struct *tty, struct serial_state *info,
98 static void rs_wait_until_sent(struct tty_struct *tty, int timeout);
133 static void rs_stop(struct tty_struct *tty) in rs_stop() argument
135 struct serial_state *info = tty->driver_data; in rs_stop()
150 static void rs_start(struct tty_struct *tty) in rs_start() argument
152 struct serial_state *info = tty->driver_data; in rs_start()
243 do_SAK(info->tport.tty); in receive_chars()
275 || info->tport.tty->flow.stopped in transmit_chars()
276 || info->tport.tty->hw_stopped) { in transmit_chars()
291 tty_wakeup(info->tport.tty); in transmit_chars()
[all …]
H A Dn_hdlc.c159 static void flush_rx_queue(struct tty_struct *tty) in flush_rx_queue() argument
161 struct n_hdlc *n_hdlc = tty->disc_data; in flush_rx_queue()
168 static void flush_tx_queue(struct tty_struct *tty) in flush_tx_queue() argument
170 struct n_hdlc *n_hdlc = tty->disc_data; in flush_tx_queue()
194 static void n_hdlc_tty_close(struct tty_struct *tty) in n_hdlc_tty_close() argument
196 struct n_hdlc *n_hdlc = tty->disc_data; in n_hdlc_tty_close()
199 clear_bit(TTY_NO_WRITE_SPLIT, &tty->flags); in n_hdlc_tty_close()
201 tty->disc_data = NULL; in n_hdlc_tty_close()
204 wake_up_interruptible(&tty->read_wait); in n_hdlc_tty_close()
205 wake_up_interruptible(&tty->write_wait); in n_hdlc_tty_close()
[all …]
H A Dvcc.c27 struct tty_struct *tty; /* only populated while dev is open */ member
277 static int vcc_rx_check(struct tty_struct *tty, int size) in vcc_rx_check() argument
279 if (WARN_ON(!tty || !tty->port)) in vcc_rx_check()
285 if (test_bit(TTY_THROTTLED, &tty->flags) || in vcc_rx_check()
286 (tty_buffer_request_room(tty->port, VCC_BUFF_LEN) < VCC_BUFF_LEN)) in vcc_rx_check()
292 static int vcc_rx(struct tty_struct *tty, char *buf, int size) in vcc_rx() argument
296 if (WARN_ON(!tty || !tty->port)) in vcc_rx()
299 len = tty_insert_flip_string(tty->port, buf, size); in vcc_rx()
301 tty_flip_buffer_push(tty->port); in vcc_rx()
309 struct tty_struct *tty; in vcc_ldc_read() local
[all …]
H A Dmxser.c481 static int mxser_set_baud(struct tty_struct *tty, speed_t newspd) in mxser_set_baud() argument
483 struct mxser_port *info = tty->driver_data; in mxser_set_baud()
493 tty_encode_baud_rate(tty, 134, 134); in mxser_set_baud()
499 tty_encode_baud_rate(tty, baud, baud); in mxser_set_baud()
529 if (C_BAUD(tty) == BOTHER) { in mxser_set_baud()
546 static void mxser_handle_cts(struct tty_struct *tty, struct mxser_port *info, in mxser_handle_cts() argument
551 if (tty->hw_stopped) { in mxser_handle_cts()
553 tty->hw_stopped = false; in mxser_handle_cts()
557 tty_wakeup(tty); in mxser_handle_cts()
563 tty->hw_stopped = true; in mxser_handle_cts()
[all …]
/linux/drivers/tty/ipwireless/
H A Dtty.c90 struct ipw_tty *tty = get_tty(linux_tty->index); in ipw_open() local
92 if (!tty) in ipw_open()
95 mutex_lock(&tty->ipw_tty_mutex); in ipw_open()
96 if (tty->port.count == 0) in ipw_open()
97 tty->tx_bytes_queued = 0; in ipw_open()
99 tty->port.count++; in ipw_open()
101 tty->port.tty = linux_tty; in ipw_open()
102 linux_tty->driver_data = tty; in ipw_open()
104 if (tty->tty_type == TTYTYPE_MODEM) in ipw_open()
105 ipwireless_ppp_open(tty->network); in ipw_open()
[all …]
/linux/drivers/tty/serdev/
H A Dserdev-ttyport.c15 struct tty_struct *tty; member
50 struct tty_struct *tty; in ttyport_write_wakeup() local
52 tty = tty_port_tty_get(port); in ttyport_write_wakeup()
53 if (!tty) in ttyport_write_wakeup()
56 if (test_and_clear_bit(TTY_DO_WRITE_WAKEUP, &tty->flags) && in ttyport_write_wakeup()
61 wake_up_interruptible(&tty->write_wait); in ttyport_write_wakeup()
63 tty_kref_put(tty); in ttyport_write_wakeup()
78 struct tty_struct *tty = serport->tty; in ttyport_write_buf() local
83 set_bit(TTY_DO_WRITE_WAKEUP, &tty->flags); in ttyport_write_buf()
84 return tty->ops->write(serport->tty, data, len); in ttyport_write_buf()
[all …]
/linux/drivers/accessibility/speakup/
H A Dspk_ttyio.c47 static int spk_ttyio_ldisc_open(struct tty_struct *tty) in spk_ttyio_ldisc_open() argument
51 if (tty != speakup_tty) in spk_ttyio_ldisc_open()
55 if (!tty->ops->write) in spk_ttyio_ldisc_open()
64 tty->disc_data = ldisc_data; in spk_ttyio_ldisc_open()
69 static void spk_ttyio_ldisc_close(struct tty_struct *tty) in spk_ttyio_ldisc_close() argument
71 kfree(tty->disc_data); in spk_ttyio_ldisc_close()
74 static size_t spk_ttyio_receive_buf2(struct tty_struct *tty, const u8 *cp, in spk_ttyio_receive_buf2() argument
77 struct spk_ldisc_data *ldisc_data = tty->disc_data; in spk_ttyio_receive_buf2()
135 static inline void get_termios(struct tty_struct *tty, in get_termios() argument
138 down_read(&tty->termios_rwsem); in get_termios()
[all …]
H A Dselection.c22 struct tty_struct *tty; member
30 struct tty_struct *tty; in __speakup_set_selection() local
39 tty = xchg(&ssw->tty, NULL); in __speakup_set_selection()
51 set_selection_kernel(&sel, tty); in __speakup_set_selection()
54 tty_kref_put(tty); in __speakup_set_selection()
62 int speakup_set_selection(struct tty_struct *tty) in speakup_set_selection() argument
70 tty_kref_get(tty); in speakup_set_selection()
71 if (cmpxchg(&speakup_sel_work.tty, NULL, tty)) { in speakup_set_selection()
72 tty_kref_put(tty); in speakup_set_selection()
94 struct tty_struct *tty; in speakup_cancel_selection() local
[all …]
/linux/net/nfc/nci/
H A Duart.c74 struct tty_struct *tty = nu->tty; in nci_uart_write_work() local
86 set_bit(TTY_DO_WRITE_WAKEUP, &tty->flags); in nci_uart_write_work()
87 len = tty->ops->write(tty, skb->data, skb->len); in nci_uart_write_work()
105 static int nci_uart_set_driver(struct tty_struct *tty, unsigned int driver) in nci_uart_set_driver() argument
121 nu->tty = tty; in nci_uart_set_driver()
122 tty->disc_data = nu; in nci_uart_set_driver()
129 tty->disc_data = NULL; in nci_uart_set_driver()
133 tty->disc_data = NULL; in nci_uart_set_driver()
151 static int nci_uart_tty_open(struct tty_struct *tty) in nci_uart_tty_open() argument
156 if (!tty->ops->write) in nci_uart_tty_open()
[all …]
/linux/drivers/input/serio/
H A Dserport.c32 struct tty_struct *tty; member
47 return -(serport->tty->ops->write(serport->tty, &data, 1) != 1); in serport_serio_write()
74 static int serport_ldisc_open(struct tty_struct *tty) in serport_ldisc_open() argument
85 serport->tty = tty; in serport_ldisc_open()
89 tty->disc_data = serport; in serport_ldisc_open()
90 tty->receive_room = 256; in serport_ldisc_open()
91 set_bit(TTY_DO_WRITE_WAKEUP, &tty->flags); in serport_ldisc_open()
100 static void serport_ldisc_close(struct tty_struct *tty) in serport_ldisc_close() argument
102 struct serport *serport = tty->disc_data; in serport_ldisc_close()
113 static void serport_ldisc_receive(struct tty_struct *tty, const u8 *cp, in serport_ldisc_receive() argument
[all …]
/linux/drivers/bluetooth/
H A Dhci_ldisc.c148 struct tty_struct *tty = hu->tty; in hci_uart_write_work() local
162 set_bit(TTY_DO_WRITE_WAKEUP, &tty->flags); in hci_uart_write_work()
163 len = tty->ops->write(tty, skb->data, skb->len); in hci_uart_write_work()
228 struct tty_struct *tty = hu->tty; in hci_uart_flush() local
230 BT_DBG("hdev %p tty %p", hdev, tty); in hci_uart_flush()
237 tty_ldisc_flush(tty); in hci_uart_flush()
238 tty_driver_flush_buffer(tty); in hci_uart_flush()
301 if (hu->tty->driver->ops->tiocmget && hu->tty->driver->ops->tiocmset) in hci_uart_has_flow_control()
310 struct tty_struct *tty = hu->tty; in hci_uart_set_flow_control() local
324 ktermios = tty->termios; in hci_uart_set_flow_control()
[all …]
/linux/drivers/usb/serial/
H A Dupd78f0730.c183 static int upd78f0730_tiocmget(struct tty_struct *tty) in upd78f0730_tiocmget() argument
186 struct usb_serial_port *port = tty->driver_data; in upd78f0730_tiocmget()
204 static int upd78f0730_tiocmset(struct tty_struct *tty, in upd78f0730_tiocmset() argument
207 struct usb_serial_port *port = tty->driver_data; in upd78f0730_tiocmset()
241 static int upd78f0730_break_ctl(struct tty_struct *tty, int break_state) in upd78f0730_break_ctl() argument
244 struct usb_serial_port *port = tty->driver_data; in upd78f0730_break_ctl()
270 struct tty_struct *tty = port->port.tty; in upd78f0730_dtr_rts() local
279 upd78f0730_tiocmset(tty, set, clear); in upd78f0730_dtr_rts()
282 static speed_t upd78f0730_get_baud_rate(struct tty_struct *tty) in upd78f0730_get_baud_rate() argument
284 const speed_t baud_rate = tty_get_baud_rate(tty); in upd78f0730_get_baud_rate()
[all …]
/linux/drivers/net/hamradio/
H A D6pack.c85 struct tty_struct *tty; /* ptr to TTY structure */ member
144 sp->tty->ops->write(sp->tty, &sp->led_state, 1); in sp_xmit_on_air()
146 actual = sp->tty->ops->write(sp->tty, sp->xbuff, sp->status2); in sp_xmit_on_air()
150 sp->tty->ops->write(sp->tty, &sp->led_state, 1); in sp_xmit_on_air()
185 set_bit(TTY_DO_WRITE_WAKEUP, &sp->tty->flags); in sp_encaps()
211 sp->tty->ops->write(sp->tty, &sp->led_state, 1); in sp_encaps()
213 actual = sp->tty->ops->write(sp->tty, sp->xbuff, count); in sp_encaps()
217 sp->tty->ops->write(sp->tty, &sp->led_state, 1); in sp_encaps()
259 if (sp->tty == NULL) in sp_open_dev()
270 if (sp->tty) { in sp_close()
[all …]
/linux/sound/soc/codecs/
H A Dcx20442.c25 struct tty_struct *tty; member
164 if (!cx20442->tty || !cx20442->tty->ops->write) in cx20442_write()
193 if (cx20442->tty->ops->write(cx20442->tty, buf, len) != len) in cx20442_write()
212 static int v253_open(struct tty_struct *tty) in v253_open() argument
217 if (!tty->ops->write) in v253_open()
221 if (!tty->disc_data) in v253_open()
224 tty->receive_room = 16; in v253_open()
225 if (tty->ops->write(tty, v253_init, len) != len) { in v253_open()
232 tty->disc_data = NULL; in v253_open()
237 static void v253_close(struct tty_struct *tty) in v253_close() argument
[all …]
/linux/drivers/mmc/core/
H A Dsdio_uart.c411 struct tty_struct *tty; in sdio_uart_transmit_chars() local
422 tty = tty_port_tty_get(&port->port); in sdio_uart_transmit_chars()
424 if (tty == NULL || !kfifo_len(xmit) || in sdio_uart_transmit_chars()
425 tty->flow.stopped || tty->hw_stopped) { in sdio_uart_transmit_chars()
427 tty_kref_put(tty); in sdio_uart_transmit_chars()
439 tty_wakeup(tty); in sdio_uart_transmit_chars()
443 tty_kref_put(tty); in sdio_uart_transmit_chars()
448 struct tty_struct *tty; in sdio_uart_check_modem_status() local
472 tty = tty_port_tty_get(&port->port); in sdio_uart_check_modem_status()
473 if (tty && C_CRTSCTS(tty)) { in sdio_uart_check_modem_status()
[all …]

12345678910