xref: /linux/Documentation/driver-api/tty/tty_buffer.rst (revision 5e0266f0e5f57617472d5aac4013f58a3ef264ac)
1.. SPDX-License-Identifier: GPL-2.0
2
3==========
4TTY Buffer
5==========
6
7.. contents:: :local:
8
9Here, we document functions for taking care of tty buffer and their flipping.
10Drivers are supposed to fill the buffer by one of those functions below and
11then flip the buffer, so that the data are passed to :doc:`line discipline
12<tty_ldisc>` for further processing.
13
14Flip Buffer Management
15======================
16
17.. kernel-doc:: drivers/tty/tty_buffer.c
18   :identifiers: tty_prepare_flip_string tty_insert_flip_string_fixed_flag
19           tty_insert_flip_string_flags __tty_insert_flip_char
20           tty_flip_buffer_push tty_ldisc_receive_buf
21
22----
23
24Other Functions
25===============
26
27.. kernel-doc:: drivers/tty/tty_buffer.c
28   :identifiers: tty_buffer_space_avail tty_buffer_set_limit
29
30----
31
32Buffer Locking
33==============
34
35These are used only in special circumstances. Avoid them.
36
37.. kernel-doc:: drivers/tty/tty_buffer.c
38   :identifiers: tty_buffer_lock_exclusive tty_buffer_unlock_exclusive
39
40----
41
42Internal Functions
43==================
44
45.. kernel-doc:: drivers/tty/tty_buffer.c
46   :internal:
47