当前位置: 首页 > article >正文

Linux-usb触摸板去除鼠标箭头

usb触摸板会同时加载hid-generic.c和hid-multitouch.c驱动

[  213.602561] usb 4-1: new full-speed USB device number 2 using ohci-platform
[  213.834953] usb 4-1: New USB device found, idVendor=6615, idProduct=108c, bcdDevice= 1.30
[  213.835048] usb 4-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  213.835081] usb 4-1: Product: USB TouchScreen
[  213.835108] usb 4-1: Manufacturer: Beijing IRTOUCHSYSTEMS Co.,Ltd.
[  213.835136] usb 4-1: SerialNumber: 788B669E0753
[  213.846822] input: Beijing IRTOUCHSYSTEMS Co.,Ltd. USB TouchScreen as /devices/platform/fd8c0000.usb/usb4/4-1/4-1:1.0/0003:6615:108C.0001/input/input4
[  213.902890] hid-generic 0003:6615:108C.0001: input,hidraw0: USB HID v1.11 Mouse [Beijing IRTOUCHSYSTEMS Co.,Ltd. USB TouchScreen] on usb-fd8c0000.usb-1/input0
[  213.914431] input: Beijing IRTOUCHSYSTEMS Co.,Ltd. USB TouchScreen as /devices/platform/fd8c0000.usb/usb4/4-1/4-1:1.1/0003:6615:108C.0002/input/input5
[  213.971215] hid-multitouch 0003:6615:108C.0002: input,hiddev96,hidraw1: USB HID v1.11 Device [Beijing IRTOUCHSYSTEMS Co.,Ltd. USB TouchScreen] on usb-fd8c0000.usb-1/input1

我们只需要让其加载hid-multitouch.c驱动即可

evtest可以看到生成了event3和event4这2个输入事件

[root@ok3568:/]# evtest
No device specified, trying to scan all of /dev/input/event*
Available devices:
/dev/input/event0:      rk805 pwrkey
/dev/input/event1:      adc-keys
/dev/input/event2:      rk-headset
/dev/input/event3:      Beijing IRTOUCHSYSTEMS Co.,Ltd. USB TouchScreen
/dev/input/event4:      Beijing IRTOUCHSYSTEMS Co.,Ltd. USB TouchScreen

lsusb查看usb触摸板的vid和pid

[root@ok3568:/]# lsusb
Bus 004 Device 002: ID 6615:108c

hid-generic.c驱动屏蔽掉该设备

diff --git a/drivers/hid/hid-generic.c b/drivers/hid/hid-generic.c
index 3b6eccbc2..2588e5a6b 100644
--- a/drivers/hid/hid-generic.c
+++ b/drivers/hid/hid-generic.c
@@ -53,6 +53,9 @@ static bool hid_generic_match(struct hid_device *hdev,
        if (bus_for_each_drv(&hid_bus_type, NULL, hdev, __check_hid_generic))
                return false;
 
+       if (hdev->vendor == 0x6615 && hdev->product == 0x108c)
+               return false;
+
        return true;
 }

http://www.kler.cn/a/155965.html

相关文章:

  • kafka面试题解答(四)
  • 【专题】计算机网络之网络层
  • 【数据结构与算法】第11课—数据结构之选择排序和交换排序
  • 2024版本IDEA创建Sprintboot项目下载依赖缓慢
  • ABC334
  • jmeter常用配置元件介绍总结之定时器
  • Ubuntu20.24 安装ecCodes,包括 tar.gz 和 python(笔记)
  • [网络安全]dos命令
  • Sakila数据库和World数据库
  • Vue+ElementUI+C#前后端分离:监控长耗时任务的实践
  • [足式机器人]Part4 南科大高等机器人控制课 Ch00 课程简介
  • C语言,求取数组的序亏:已知一个整数数组,求出个数组中每个元素在整个 数组的排序。
  • 鸿蒙(HarmonyOS)应用开发——构建页面(题目答案)
  • 93. 复原 IP 地址
  • 华为手环配置技巧
  • Java 中 IO 流分为几种?
  • 【算法思考记录】力扣1423. 可获得的最大点数[Python3, 滑动窗口]
  • golang 实现单向链表(lru)、双向链表、双向循环链表
  • Error:cannot launch node of type [map_server/map_server]
  • A++ 敏捷开发-1 如何改善
  • 常微分方程组的数值解法(C++)
  • WPS开发文档
  • Android:BackStackRecord
  • KALI LINUX安全审核
  • 实时设计#N3期训练营DONE,ComfyUI中文社区@上海
  • 再谈项目管理中的效率问题