Linux
同一設備的 /proc/bus/input/devices 中有多個條目
我有一個 USB 觸摸屏連接到我的硬體設置,但使用
cat /proc/bus/input/devices
為同一設備提供了兩個條目:I: Bus=0003 Vendor=2965 Product=5023 Version=0110 N: Name="Kortek Kortek Touch" P: Phys=usb-0000:00:14.0-3.4/input2 S: Sysfs=/devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.4/3-3.4:1.2/0003:2965:5023.0006/input/input7 U: Uniq=S20131028 H: Handlers=mouse1 event7 js0 B: PROP=0 B: EV=1b B: KEY=30000 0 0 0 0 0 0 0 0 B: ABS=3 B: MSC=10 I: Bus=0003 Vendor=2965 Product=5023 Version=0110 N: Name="Kortek Kortek Touch" P: Phys=usb-0000:00:14.0-3.4/input0 S: Sysfs=/devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.4/3-3.4:1.0/0003:2965:5023.0004/input/input13 U: Uniq=S20131028 H: Handlers=mouse2 event13 B: PROP=2 B: EV=b B: KEY=400 0 0 0 0 0 0 0 0 0 0 B: ABS=a608000 3
為什麼同一設備有兩個不同的條目?
我想我找到了這背後的原因。
同一設備作為具有不同介面的兩個設備暴露給 USB 子系統。
就像在條目中一樣,從最後一位數字所在
Sysfs=/devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.4/3-3.4:1.2/0003:2965:5023.0006/input/input7
的字元串中可以看出,該設備公開了硬體的介面 2 。3-3.4:1.2``InterfaceNumber
如果我們查看 的輸出
cat /sys/devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.4/3-3.4:1.2/0003:2965:5023.0006/input/input7/device
,我們可以看到DRIVER=hid-generic
硬體介面將此設備公開為 USBHID 通用設備。但是,對於其他介面為 0 的條目,如中所示
/devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.4/3-3.4:1.0/0003:2965:5023.0004/input/input13
,的輸出cat /sys/devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.4/3-3.4:1.0/0003:2965:5023.0004/input/input13/device
顯示DRIVER=hid-multitouch
這意味著硬體的該介面將其公開為 HID MULTITOUCH。因此,這兩個條目為同一個硬體。