dev_input_allocate_polled_device函数功能
时间: 2023-08-15 13:06:37 浏览: 94
dev_input_allocate_polled_device函数是一个Linux内核函数,用于为输入设备分配一个polled设备结构体。该函数的主要功能是为新的输入设备分配一个polled设备结构体,并初始化该结构体的成员变量。该结构体可以用于注册输入设备,并在设备上进行轮询操作,以读取输入数据并将其传递给上层应用程序。该函数的定义在include/linux/input-polldev.h头文件中。
相关问题
devm_input_allocate_polled_device 函数介绍
devm_input_allocate_polled_device 函数是一个帮助函数,用于动态分配一个输入设备并将其进行注册。该函数会自动完成一系列的操作,使得注册的输入设备可以被轮询,检测输入事件。使用该函数可以方便地创建一个轮询设备,而无需进行繁琐的初始化和注册操作。
该函数的原型为:
struct input_polled_dev *devm_input_allocate_polled_device(struct device *dev);
该函数接收一个指向设备结构体的指针,它会在该设备下分配并注册一个轮询输入设备。在设备释放时会自动释放该分配的输入设备。函数将返回分配的输入设备的指针,或者返回一个错误指针。
使用该函数时需要注意,该函数创建的输入设备并不是真正的硬件设备,而是一个虚拟的输入设备。它只是通过轮询的方式模拟输入事件的产生,并提供给应用程序读取。在实际的硬件设备中,输入事件是通过中断的方式产生的,不同于轮询方式。
该函数创建的输入设备可以通过 input_event() 函数产生输入事件,并通过 input_sync() 函数同步事件。此外,还可以通过 input_report_key() 和 input_report_abs() 函数报告按键和绝对坐标事件。
devm_extcon_dev_allocate 函数的功能参数返回值
功能:为外接设备分配一个 extcon 设备。
参数:
- dev: 外接设备的 struct device 结构体指针。
- name: extcon 设备的名字。
- driver_name: extcon 设备对应的驱动名字。
- max_supported: extcon 设备支持的最大事件数量。
返回值:返回一个 struct extcon_dev 结构体指针,如果分配失败,返回 NULL。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)