| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- .. SPDX-License-Identifier: GPL-2.0
- .. _GPIO_V2_LINE_SET_CONFIG_IOCTL:
- *****************************
- GPIO_V2_LINE_SET_CONFIG_IOCTL
- *****************************
- Name
- ====
- GPIO_V2_LINE_SET_CONFIG_IOCTL - Update the configuration of previously requested lines.
- Synopsis
- ========
- .. c:macro:: GPIO_V2_LINE_SET_CONFIG_IOCTL
- ``int ioctl(int req_fd, GPIO_V2_LINE_SET_CONFIG_IOCTL, struct gpio_v2_line_config *config)``
- Arguments
- =========
- ``req_fd``
- The file descriptor of the GPIO character device, as returned in the
- :c:type:`request.fd<gpio_v2_line_request>` by gpio-v2-get-line-ioctl.rst.
- ``config``
- The new :c:type:`configuration<gpio_v2_line_config>` to apply to the
- requested lines.
- Description
- ===========
- Update the configuration of previously requested lines, without releasing the
- line or introducing potential glitches.
- The new configuration must specify a configuration for all requested lines.
- The same :ref:`gpio-v2-get-line-config-rules` and
- :ref:`gpio-v2-get-line-config-support` that apply when requesting the lines
- also apply when updating the line configuration, with the additional
- restriction that a direction flag must be set to enable reconfiguration.
- If no direction flag is set in the configuration for a given line then the
- configuration for that line is left unchanged.
- The motivating use case for this command is changing direction of
- bi-directional lines between input and output, but it may also be used to
- dynamically control edge detection, or more generally move lines seamlessly
- from one configuration state to another.
- To only change the value of output lines, use
- gpio-v2-line-set-values-ioctl.rst.
- Return Value
- ============
- On success 0.
- On error -1 and the ``errno`` variable is set appropriately.
- Common error codes are described in error-codes.rst.
|