全志V853芯片 如何解决getevent运行出错,报错为“could not add watch for /dev/input”的问题?

一、问题背景

如果系统已经注册了input设备,想要使用getevent命令去获取input事件时,发现getevent运行会报错,不能正常运行。

报错信息为:could not add watch for /dev/input, Function not implemented

如下图所示:

在这里插入图片描述

二、问题分析

通过小机端目录/dev/input/下,发现是有event*的,证明是已经注册有input设备了,有input设备getevent就可以正常运行。

通过getevent源码得知,"could not add watch"的错误是由于运行函数inotify_add_watch(),获取不到所对应的inotify的watch而产生的。

在这里插入图片描述

inotify是一个内核用于通知用户空间程序文件系统变化的机制,现在获取不到inotify可以判断为内核空间没有给到用户空间权限或者是接口。

内核空间是有对应的配置使能用户空间的接口的,选上该配置,即可解决问题。

在这里插入图片描述

PS:另外,使用cat /dev/input/event* | hexdump -C 也可以获取input事件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值