GPIOHANDLE_GET_LINE_VALUES_IOCTL

警告

此 ioctl 是 GPIO 字符设备用户空间 API (v1) 的一部分,并且已被 GPIO_V2_LINE_GET_VALUES_IOCTL 取代。

名称

GPIOHANDLE_GET_LINE_VALUES_IOCTL - 获取所有请求线路的值。

概要

GPIOHANDLE_GET_LINE_VALUES_IOCTL

int ioctl(int handle_fd, GPIOHANDLE_GET_LINE_VALUES_IOCTL, struct gpiohandle_data *values)

参数

handle_fd

GPIO 字符设备的文件描述符,由 GPIO_GET_LINEHANDLE_IOCTLrequest.fd 中返回。

values

要填充的 line_values

描述

获取所有请求线路的值。

返回的值是逻辑值,表示线路是激活还是非激活状态。 GPIOHANDLE_REQUEST_ACTIVE_LOW 标志控制物理值(高/低)和逻辑值(激活/非激活)之间的映射。如果未设置 GPIOHANDLE_REQUEST_ACTIVE_LOW,则高电平为激活,低电平为非激活。如果设置了 GPIOHANDLE_REQUEST_ACTIVE_LOW,则低电平为激活,高电平为非激活。

可以读取输入和输出线路的值。

对于输出线路,返回的值取决于驱动程序和配置,可以是输出缓冲区(最后请求设置的值)或输入缓冲区(线路的实际电平),并且根据硬件和配置,这些值可能不同。

此 ioctl 还可用于读取线路事件的线路值,用 event_fd 替换 handle_fd。由于在这种情况下只请求一条线路,因此只在 values 中返回一个值。

返回值

成功时返回 0,并且 values 填充了读取的值。

出错时返回 -1,并设置 errno 变量。 常见错误代码在 GPIO 错误代码 中描述。