xref: /linux/Documentation/userspace-api/gpio/gpio-handle-get-line-values-ioctl.rst (revision 4b660dbd9ee2059850fd30e0df420ca7a38a1856)
1.. SPDX-License-Identifier: GPL-2.0
2
3.. _GPIOHANDLE_GET_LINE_VALUES_IOCTL:
4
5********************************
6GPIOHANDLE_GET_LINE_VALUES_IOCTL
7********************************
8.. warning::
9    This ioctl is part of chardev_v1.rst and is obsoleted by
10    gpio-v2-line-get-values-ioctl.rst.
11
12Name
13====
14
15GPIOHANDLE_GET_LINE_VALUES_IOCTL - Get the values of all requested lines.
16
17Synopsis
18========
19
20.. c:macro:: GPIOHANDLE_GET_LINE_VALUES_IOCTL
21
22``int ioctl(int handle_fd, GPIOHANDLE_GET_LINE_VALUES_IOCTL, struct gpiohandle_data *values)``
23
24Arguments
25=========
26
27``handle_fd``
28    The file descriptor of the GPIO character device, as returned in the
29    :c:type:`request.fd<gpiohandle_request>` by gpio-get-linehandle-ioctl.rst.
30
31``values``
32    The :c:type:`line_values<gpiohandle_data>` to be populated.
33
34Description
35===========
36
37Get the values of all requested lines.
38
39The values of both input and output lines may be read.
40
41For output lines, the value returned is driver and configuration dependent and
42may be either the output buffer (the last requested value set) or the input
43buffer (the actual level of the line), and depending on the hardware and
44configuration these may differ.
45
46This ioctl can also be used to read the line value for line events,
47substituting the ``event_fd`` for the ``handle_fd``.  As there is only
48one line requested in that case, only the one value is returned in ``values``.
49
50Return Value
51============
52
53On success 0 and ``values`` populated with the values read.
54
55On error -1 and the ``errno`` variable is set appropriately.
56Common error codes are described in error-codes.rst.
57