Input: hid-input - use a larger event buffer for MT devices
authorHenrik Rydberg <[email protected]>
Wed, 23 Jun 2010 16:31:37 +0000 (09:31 -0700)
committerDmitry Torokhov <[email protected]>
Wed, 23 Jun 2010 20:05:26 +0000 (13:05 -0700)
The MT devices produce a lot of data. Tell the underlying input device
approximately how many events will be sent per synchronization, to allow
for better buffering. The number is a template based on continuously
reporting details for each finger on a single hand.

Signed-off-by: Henrik Rydberg <[email protected]>
Acked-by: Jiri Kosina <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
drivers/hid/hid-input.c

index 7a0d2e4661a1244b02de5b511389fc1ea7bb68d5..69d152e16a6aa2e0a51d3945473c78f9e8c2f7c7 100644 (file)
@@ -534,6 +534,9 @@ mapped:
                        input_set_abs_params(input, usage->code, a, b, (b - a) >> 8, (b - a) >> 4);
                else    input_set_abs_params(input, usage->code, a, b, 0, 0);
 
+               /* use a larger default input buffer for MT devices */
+               if (usage->code == ABS_MT_POSITION_X && input->hint_events_per_packet == 0)
+                       input_set_events_per_packet(input, 60);
        }
 
        if (usage->type == EV_ABS &&