mirror of
https://github.com/torvalds/linux.git
synced 2024-11-10 22:21:40 +00:00
HID: penmount: report only one button for PenMount 6000 USB touchscreen controller
PenMount 6000 USB resistive touchscreen controller reports it has three buttons, while in reality it doesn't have any and doesn't support active styli, and only generates touch events. In penmount_input_mapping(), map only the first button (with code 0), ignore the rest. Signed-off-by: Andrew Shadura <andrew.shadura@collabora.co.uk> Tested-by: Christian Gmeiner <c.gmeiner@bachmann.info Signed-off-by: Jiri Kosina <jkosina@suse.cz>
This commit is contained in:
parent
c2848f2eef
commit
5f66872cbd
@ -23,8 +23,12 @@ static int penmount_input_mapping(struct hid_device *hdev,
|
|||||||
struct hid_usage *usage, unsigned long **bit, int *max)
|
struct hid_usage *usage, unsigned long **bit, int *max)
|
||||||
{
|
{
|
||||||
if ((usage->hid & HID_USAGE_PAGE) == HID_UP_BUTTON) {
|
if ((usage->hid & HID_USAGE_PAGE) == HID_UP_BUTTON) {
|
||||||
hid_map_usage(hi, usage, bit, max, EV_KEY, BTN_TOUCH);
|
if (((usage->hid - 1) & HID_USAGE) == 0) {
|
||||||
return 1;
|
hid_map_usage(hi, usage, bit, max, EV_KEY, BTN_TOUCH);
|
||||||
|
return 1;
|
||||||
|
} else {
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
Loading…
Reference in New Issue
Block a user