1 .. SPDX-License-Identifier: GPL-2.0 2 3 Digital TV Common functions 4 --------------------------- 5 6 DVB devices 7 ~~~~~~~~~~~ 8 9 Those functions are responsible for handling t 10 11 .. kernel-doc:: include/media/dvbdev.h 12 13 Digital TV Ring buffer 14 ~~~~~~~~~~~~~~~~~~~~~~ 15 16 Those routines implement ring buffers used to 17 copy it from/to userspace. 18 19 .. note:: 20 21 1) For performance reasons read and write ro 22 and/or number of bytes free/available. Th 23 routines are called. For example: 24 25 .. code-block:: c 26 27 /* write @buflen: bytes */ 28 free = dvb_ringbuffer_free(rbuf); 29 if (free >= buflen) 30 count = dvb_ringbuffer_write(r 31 else 32 /* do something */ 33 34 /* read min. 1000, max. @bufsize: byte 35 avail = dvb_ringbuffer_avail(rbuf); 36 if (avail >= 1000) 37 count = dvb_ringbuffer_read(rb 38 else 39 /* do something */ 40 41 2) If there is exactly one reader and one wr 42 to lock read or write operations. 43 Two or more readers must be locked agains 44 Flushing the buffer counts as a read oper 45 Resetting the buffer counts as a read and 46 Two or more writers must be locked agains 47 48 .. kernel-doc:: include/media/dvb_ringbuffer.h 49 50 Digital TV VB2 handler 51 ~~~~~~~~~~~~~~~~~~~~~~ 52 53 .. kernel-doc:: include/media/dvb_vb2.h
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.