Merge tag 'riscv-for-linus-5.20-mw2' of git://git.kernel.org/pub/scm/linux/kernel...
[linux-2.6-microblaze.git] / Documentation / driver-api / tty / tty_port.rst
1 .. SPDX-License-Identifier: GPL-2.0
2
3 ========
4 TTY Port
5 ========
6
7 .. contents:: :local:
8
9 The TTY drivers are advised to use struct tty_port helpers as much as possible.
10 If the drivers implement :c:member:`tty_port.ops.activate()` and
11 :c:member:`tty_port.ops.shutdown()`, they can use tty_port_open(),
12 tty_port_close(), and tty_port_hangup() in respective
13 :c:member:`tty_struct.ops` hooks.
14
15 The reference and details are contained in the `TTY Port Reference`_ and `TTY
16 Port Operations Reference`_ sections at the bottom.
17
18 TTY Port Functions
19 ==================
20
21 Init & Destroy
22 --------------
23
24 .. kernel-doc::  drivers/tty/tty_port.c
25    :identifiers: tty_port_init tty_port_destroy
26         tty_port_get tty_port_put
27
28 Open/Close/Hangup Helpers
29 -------------------------
30
31 .. kernel-doc::  drivers/tty/tty_port.c
32    :identifiers: tty_port_install tty_port_open tty_port_block_til_ready
33         tty_port_close tty_port_close_start tty_port_close_end tty_port_hangup
34         tty_port_shutdown
35
36 TTY Refcounting
37 ---------------
38
39 .. kernel-doc::  drivers/tty/tty_port.c
40    :identifiers: tty_port_tty_get tty_port_tty_set
41
42 TTY Helpers
43 -----------
44
45 .. kernel-doc::  drivers/tty/tty_port.c
46    :identifiers: tty_port_tty_hangup tty_port_tty_wakeup
47
48
49 Modem Signals
50 -------------
51
52 .. kernel-doc::  drivers/tty/tty_port.c
53    :identifiers: tty_port_carrier_raised tty_port_raise_dtr_rts
54         tty_port_lower_dtr_rts
55
56 ----
57
58 TTY Port Reference
59 ==================
60
61 .. kernel-doc:: include/linux/tty_port.h
62    :identifiers: tty_port
63
64 ----
65
66 TTY Port Operations Reference
67 =============================
68
69 .. kernel-doc:: include/linux/tty_port.h
70    :identifiers: tty_port_operations