Thread (14 messages) 14 messages, 6 authors, 2015-03-24

Re: [PATCH] HID: Add driver for acer keybard with broken rdesc

From: Andrew Duggan <hidden>
Date: 2015-02-18 02:04:31

On 02/17/2015 04:30 AM, Jiri Kosina wrote:
On Thu, 29 Jan 2015, linux@simon-woerner.de wrote:
quoted
From: Simon Wörner <redacted>

HID: Add driver for acer keybard with broken rdesc
Hi Simon,

to make sure proper device <-> driver binding is performed, you also have
to add device ID to the hid_have_special_driver[] array.
I have been meaning to respond to this patch. Unfortunately, simply 
adding this driver to the hid_have_special_driver[] list will prevent 
hid-multitouch from binding to the touchpad which shares the same vid 
and pid. My suggestion would be to create a new scan_flag for 
GD_KEYBOARD and to add to the code in hid_scan_collection() which scans 
the GENDESK usages. Similar to the code which is searching for 
HID_GD_POINTER. Then in hid_scan_report() we could assign a group for 
this driver based on the pid and the GD_KEYBOARD scan flag in the vendor 
handling code.

I can help out with implementing this part of the patch if there aren't 
any other suggestions. Adding a new group and more code to the 
hid_scan_report() vendor handling code is definately not ideal. But, I 
am not sure of a better way of binding different sub drivers to devices 
with the same vid and pid.

An alternative would be to have hid-rmi handle all Synaptics touchpads, 
even the ones which currently use hid-multitouch. Then the keyboard 
report descriptor fixup could just be handled in hid-rmi. Accessing the 
finger data via rmi mode would also have the benefit of being able to 
report events which are currently not supported by the PTP collection 
(ie ABS_MT_PRESSURE, ABS_MT_TOUCH_MAJOR/MINOR). The touchpads which 
currently use hid-multitouch report finger data a little differently 
then the ones currently using hid-rmi so there is some work which would 
need to be done to add support for them in hid-rmi.

Andrew
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help