Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v4.8 62 lines 1.5 kB view raw
1.. -*- coding: utf-8; mode: rst -*- 2 3.. _lirc-read: 4 5*********** 6LIRC read() 7*********** 8 9Name 10==== 11 12lirc-read - Read from a LIRC device 13 14 15Synopsis 16======== 17 18.. code-block:: c 19 20 #include <unistd.h> 21 22 23.. cpp:function:: ssize_t read( int fd, void *buf, size_t count ) 24 25 26Arguments 27========= 28 29``fd`` 30 File descriptor returned by ``open()``. 31 32``buf`` 33``count`` 34 35 36Description 37=========== 38 39:ref:`read() <lirc-read>` attempts to read up to ``count`` bytes from file 40descriptor ``fd`` into the buffer starting at ``buf``. If ``count`` is zero, 41:ref:`read() <lirc-read>` returns zero and has no other results. If ``count`` 42is greater than ``SSIZE_MAX``, the result is unspecified. 43 44The lircd userspace daemon reads raw IR data from the LIRC chardev. The 45exact format of the data depends on what modes a driver supports, and 46what mode has been selected. lircd obtains supported modes and sets the 47active mode via the ioctl interface, detailed at :ref:`lirc_func`. 48The generally preferred mode for receive is 49:ref:`LIRC_MODE_MODE2 <lirc-mode-mode2>`, in which packets containing an 50int value describing an IR signal are read from the chardev. 51 52See also 53`http://www.lirc.org/html/technical.html <http://www.lirc.org/html/technical.html>`__ 54for more info. 55 56Return Value 57============ 58 59On success, the number of bytes read is returned. It is not an error if 60this number is smaller than the number of bytes requested, or the amount 61of data required for one frame. On error, -1 is returned, and the ``errno`` 62variable is set appropriately.