GPIO_V2_GET_LINEINFO_WATCH_IOCTL

名称

GPIO_V2_GET_LINEINFO_WATCH_IOCTL - 启用监视线路,以便观察其请求状态和配置信息的更改。

概要

GPIO_V2_GET_LINEINFO_WATCH_IOCTL

int ioctl(int chip_fd, GPIO_V2_GET_LINEINFO_WATCH_IOCTL, struct gpio_v2_line_info *info)

参数

chip_fd

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

info

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

描述

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

注意

通常不需要监视线路信息,通常只会被系统监视组件使用。

线路信息不包含线路值。必须使用GPIO_V2_GET_LINE_IOCTL请求线路以访问其值,并且线路请求可以使用GPIO_V2_LINE_EVENT_READ监视线路事件。

默认情况下,打开GPIO芯片时,所有线路都处于未监视状态。

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

一旦设置了监视器,线路信息的任何更改都会生成事件,可以从chip_fd读取这些事件,如GPIO_V2_LINEINFO_CHANGED_READ中所述。

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

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

返回值

成功时返回0,并且info填充有当前的线路信息。

发生错误时返回-1,并且errno变量被适当设置。常见错误代码在GPIO错误代码中描述。