Based on kernel version 6.14
. Page generated on 2025-04-02 08:20 EST
.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 | .. SPDX-License-Identifier: GPL-2.0 .. _gpio_errors: ******************* GPIO Error Codes ******************* .. _gpio-errors: .. tabularcolumns:: |p{2.5cm}|p{15.0cm}| .. flat-table:: Common GPIO error codes :header-rows: 0 :stub-columns: 0 :widths: 1 16 - - ``EAGAIN`` (aka ``EWOULDBLOCK``) - The device was opened in non-blocking mode and a read can't be performed as there is no data available. - - ``EBADF`` - The file descriptor is not valid. - - ``EBUSY`` - The ioctl can't be handled because the device is busy. Typically returned when an ioctl attempts something that would require the usage of a resource that was already allocated. The ioctl must not be retried without performing another action to fix the problem first. - - ``EFAULT`` - There was a failure while copying data from/to userspace, probably caused by an invalid pointer reference. - - ``EINVAL`` - One or more of the ioctl parameters are invalid or out of the allowed range. This is a widely used error code. - - ``ENODEV`` - Device not found or was removed. - - ``ENOMEM`` - There's not enough memory to handle the desired operation. - - ``EPERM`` - Permission denied. Typically returned in response to an attempt to perform an action incompatible with the current line configuration. - - ``EIO`` - I/O error. Typically returned when there are problems communicating with a hardware device or requesting features that hardware does not support. This could indicate broken or flaky hardware. It's a 'Something is wrong, I give up!' type of error. - - ``ENXIO`` - Typically returned when a feature requiring interrupt support was requested, but the line does not support interrupts. .. note:: #. This list is not exhaustive; ioctls may return other error codes. Since errors may have side effects such as a driver reset, applications should abort on unexpected errors, or otherwise assume that the device is in a bad state. #. Request-specific error codes are listed in the individual requests descriptions. |