GPIO_GET_LINEINFO_WATCH_IOCTL

警告

此 ioctl 是GPIO 字符设备用户空间 API (v1)的一部分,已被GPIO_V2_GET_LINEINFO_WATCH_IOCTL废弃。

名称

GPIO_GET_LINEINFO_WATCH_IOCTL - 启用监视线路,以了解其请求状态和配置信息的更改。

概要

GPIO_GET_LINEINFO_WATCH_IOCTL

int ioctl(int chip_fd, GPIO_GET_LINEINFO_WATCH_IOCTL, struct gpioline_info *info)

参数

chip_fd

open()返回的 GPIO 字符设备的文件描述符。

info

要填充的line_info结构体,offset设置为指示要监视的线路

描述

启用监视线路,以了解其请求状态和配置信息的更改。线路信息的更改包括线路被请求、释放或重新配置。

注意

通常不需要监视线路信息,并且通常仅由系统监视组件使用。

线路信息不包括线路值。

必须使用GPIO_GET_LINEHANDLE_IOCTLGPIO_GET_LINEEVENT_IOCTL请求线路以访问其值,并且线路事件可以使用GPIO_LINEEVENT_DATA_READ监视线路的事件。

默认情况下,打开 GPIO 芯片时,所有线路都将取消监视。

可以通过为每个线路添加监视来同时监视多条线路。

设置监视后,对线路信息的任何更改都将生成事件,可以从chip_fd中读取事件,如GPIO_LINEINFO_CHANGED_READ中所述。

向已监视的线路添加监视是一个错误 (EBUSY)。

监视特定于chip_fd,并且独立于通过单独调用open()打开的同一 GPIO 芯片上的监视。

首次添加到 5.7 版本。

返回值

成功时为 0,并且info填充了当前线路信息。

出错时为 -1,并且会适当地设置errno变量。常见错误代码在GPIO 错误代码中描述。