Merge remote-tracking branch 'xen-tip/linux-next'
[deliverable/linux.git] / Documentation / media / uapi / rc / lirc-write.rst
... / ...
CommitLineData
1.. -*- coding: utf-8; mode: rst -*-
2
3.. _lirc-write:
4
5************
6LIRC write()
7************
8
9Name
10====
11
12lirc-write - Write to a LIRC device
13
14
15Synopsis
16========
17
18.. code-block:: c
19
20 #include <unistd.h>
21
22
23.. c:function:: ssize_t write( int fd, void *buf, size_t count )
24 :name: lirc-write
25
26Arguments
27=========
28
29``fd``
30 File descriptor returned by ``open()``.
31
32``buf``
33 Buffer with data to be written
34
35``count``
36 Number of bytes at the buffer
37
38Description
39===========
40
41:ref:`write() <lirc-write>` writes up to ``count`` bytes to the device
42referenced by the file descriptor ``fd`` from the buffer starting at
43``buf``.
44
45The data written to the chardev is a pulse/space sequence of integer
46values. Pulses and spaces are only marked implicitly by their position.
47The data must start and end with a pulse, therefore, the data must
48always include an uneven number of samples. The write function must
49block until the data has been transmitted by the hardware. If more data
50is provided than the hardware can send, the driver returns ``EINVAL``.
51
52
53Return Value
54============
55
56On success, the number of bytes read is returned. It is not an error if
57this number is smaller than the number of bytes requested, or the amount
58of data required for one frame. On error, -1 is returned, and the ``errno``
59variable is set appropriately. The generic error codes are described at the
60:ref:`Generic Error Codes <gen-errors>` chapter.
This page took 0.033393 seconds and 5 git commands to generate.