diff options
-rw-r--r-- | drivers/input/touchscreen/atmel_mxt_ts.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/input/touchscreen/atmel_mxt_ts.c b/drivers/input/touchscreen/atmel_mxt_ts.c index a248414642d9..31113c372f59 100644 --- a/drivers/input/touchscreen/atmel_mxt_ts.c +++ b/drivers/input/touchscreen/atmel_mxt_ts.c | |||
@@ -654,10 +654,11 @@ static void mxt_input_button(struct mxt_data *data, struct mxt_message *message) | |||
654 | } | 654 | } |
655 | } | 655 | } |
656 | 656 | ||
657 | static void mxt_input_sync(struct input_dev *input_dev) | 657 | static void mxt_input_sync(struct mxt_data *data) |
658 | { | 658 | { |
659 | input_mt_report_pointer_emulation(input_dev, false); | 659 | input_mt_report_pointer_emulation(data->input_dev, |
660 | input_sync(input_dev); | 660 | data->pdata->t19_num_keys); |
661 | input_sync(data->input_dev); | ||
661 | } | 662 | } |
662 | 663 | ||
663 | static void mxt_input_touchevent(struct mxt_data *data, | 664 | static void mxt_input_touchevent(struct mxt_data *data, |
@@ -707,7 +708,7 @@ static void mxt_input_touchevent(struct mxt_data *data, | |||
707 | if (status & MXT_T9_RELEASE) { | 708 | if (status & MXT_T9_RELEASE) { |
708 | input_mt_report_slot_state(input_dev, | 709 | input_mt_report_slot_state(input_dev, |
709 | MT_TOOL_FINGER, 0); | 710 | MT_TOOL_FINGER, 0); |
710 | mxt_input_sync(input_dev); | 711 | mxt_input_sync(data); |
711 | } | 712 | } |
712 | 713 | ||
713 | /* Touch active */ | 714 | /* Touch active */ |
@@ -783,7 +784,7 @@ static irqreturn_t mxt_process_messages_until_invalid(struct mxt_data *data) | |||
783 | } while (reportid != 0xff); | 784 | } while (reportid != 0xff); |
784 | 785 | ||
785 | if (update_input) | 786 | if (update_input) |
786 | mxt_input_sync(data->input_dev); | 787 | mxt_input_sync(data); |
787 | 788 | ||
788 | return IRQ_HANDLED; | 789 | return IRQ_HANDLED; |
789 | } | 790 | } |