1 .. SPDX-License-Identifier: GPL-2.0 2 3 .. _GPIO_V2_LINEINFO_CHANGED_READ: 4 5 ***************************** 6 GPIO_V2_LINEINFO_CHANGED_READ 7 ***************************** 8 9 Name 10 ==== 11 12 GPIO_V2_LINEINFO_CHANGED_READ - Read line info 13 lines from the chip. 14 15 Synopsis 16 ======== 17 18 ``int read(int chip_fd, void *buf, size_t coun 19 20 Arguments 21 ========= 22 23 ``chip_fd`` 24 The file descriptor of the GPIO character 25 26 ``buf`` 27 The buffer to contain the :c:type:`events< 28 29 ``count`` 30 The number of bytes available in ``buf``, 31 of a :c:type:`gpio_v2_line_info_changed` e 32 33 Description 34 =========== 35 36 Read line info changed events for watched line 37 38 .. note:: 39 Monitoring line info changes is not genera 40 only be performed by a system monitoring c 41 42 These events relate to changes in a line's 43 not its value. Use gpio-v2-line-event-read 44 line changes value. 45 46 A line must be watched using gpio-v2-get-linei 47 info changed events. Subsequently, a request, 48 of the line will generate an info changed even 49 50 The kernel timestamps events when they occur a 51 from where they can be read by userspace at it 52 53 The size of the kernel event buffer is fixed a 54 55 The buffer may overflow if bursts of events oc 56 by userspace. If an overflow occurs then the m 57 Overflow cannot be detected from userspace. 58 59 Events read from the buffer are always in the 60 detected by the kernel, including when multipl 61 the one ``chip_fd``. 62 63 To minimize the number of calls required to co 64 userspace, `read()` supports copying multiple 65 copied is the lower of the number available in 66 number that will fit in the userspace buffer ( 67 68 A `read()` will block if no event is available 69 been set **O_NONBLOCK**. 70 71 The presence of an event can be tested for by 72 readable using `poll()` or an equivalent. 73 74 Return Value 75 ============ 76 77 On success the number of bytes read, which wil 78 of a :c:type:`gpio_v2_line_info_changed` event 79 80 On error -1 and the ``errno`` variable is set 81 Common error codes are described in error-code
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.