为我的LG 17MB15T USB触摸屏添加了对hid-ids.h和hid-multitouch.c以及重新编译内核的支持。设备在DMESG中被识别并由hid-multitouch声明:
<6>[ 307.451668] usb 3-1.6: new full-speed USB device number 7 using sw-ehci
<6>[ 307.563695] usb 3-1.6: New USB device found, idVendor=16fd, idProduct=d091
<6>[ 307.563753] usb 3-1.6: New USB device strings: Mfr=1, Product=2, SerialNumber=0
<6>[ 307.563803] usb 3-1.6: Product: LG TS2009F-USB
<6>[ 307.563842] usb 3-1.6: Manufacturer: Edamak
<6>[ 307.582868] input: Edamak LG TS2009F-USB as /devices/platform/sw-ehci.2/usb3/3-1/3-1.6/3-1.6:1.0/input/input8
<6>[ 307.588181] hid-multitouch 0003:16FD:D091.0006: input: USB HID v1.11 Mouse
[Edamak LG TS2009F-USB] on usb-sw-ehci-1.6/input0
Getevent -l将设备列为输入设备:
add device 1: /dev/input/event2
name: "Edamak LG TS2009F-USB"
add device 2: /dev/input/event5
name: "sun7i-ir"
could not get driver version for /dev/input/mouse0, Not a typewriter
add device 3: /dev/input/event1
name: "axp20-supplyer"
add device 4: /dev/input/event0
name: "sw-keyboard"
could not get driver version for /dev/input/mice, Not a typewriter
但是没有发生任何事件。 我的/system/usr/idc/Vendor_16fd_Product_d091.idc看起来像这样:
touch.deviceType = TouchScreen
touch.orientationAware = 1
device.internal = 0
keyboard.layout = qwerty
keyboard.characterMap = qwerty2
keyboard.orientationAware =1
keyboard.builtIn = 1
cursor.mode = navigation
cursor.orientationAware = 1
dumsys input
根本没有列出设备。我也试过touch.deviceType = Pointer
- 没有运气!
但是,如果我加载了库存内核(Allwiner A20)Linux 3.4,Adroid 4.2.2,该设备被检测为:
gen-usb 0003:16FD:D091.0006: input: USB HID v1.11 Mouse
触摸或按下屏幕时会触发事件。 Dumsys输入仍然无法识别设备。
我怀疑.idc文件存在一些问题,但无法找到有关属性及其合法值的大量信息。或者,可能需要另一个中间文件才能使其工作。
触控屏在Linaro 12上可以在同一硬件(pcduino 3),Windows 7,8在其他硬件上正常工作。
我们将非常感谢您的帮助和建议。