From: Dmitry Torokhov Date: Wed, 22 Jul 2020 05:17:27 +0000 (-0700) Subject: Merge branch 'for-linus' into next X-Git-Tag: v5.10.7~1015^2~21^2~12 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a5c33d5f745ca1ecfbd692a531ef2a12bfeeb57e;p=platform%2Fkernel%2Flinux-rpi.git Merge branch 'for-linus' into next Sync up with 'for-linus' branch to resolve conflict in Elan touchpad driver. --- a5c33d5f745ca1ecfbd692a531ef2a12bfeeb57e diff --cc drivers/input/mouse/elan_i2c_core.c index 4b6e2df,6291fb5..8a0f224 --- a/drivers/input/mouse/elan_i2c_core.c +++ b/drivers/input/mouse/elan_i2c_core.c @@@ -997,12 -951,13 +997,14 @@@ static void elan_report_absolute(struc u8 hover_info = packet[ETP_HOVER_INFO_OFFSET]; bool contact_valid, hover_event; + pm_wakeup_event(&data->client->dev, 0); + - hover_event = hover_info & 0x40; - for (i = 0; i < ETP_MAX_FINGERS; i++) { - contact_valid = tp_info & (1U << (3 + i)); - elan_report_contact(data, i, contact_valid, finger_data); + hover_event = hover_info & BIT(6); + for (i = 0; i < ETP_MAX_FINGERS; i++) { + contact_valid = tp_info & BIT(3 + i); + elan_report_contact(data, i, contact_valid, high_precision, + packet, finger_data); if (contact_valid) finger_data += ETP_FINGER_DATA_LEN; } @@@ -1063,14 -1019,9 +1066,12 @@@ static irqreturn_t elan_isr(int irq, vo if (error) goto out; - pm_wakeup_event(dev, 0); - switch (report[ETP_REPORT_ID_OFFSET]) { case ETP_REPORT_ID: - elan_report_absolute(data, report); + elan_report_absolute(data, report, false); + break; + case ETP_REPORT_ID2: + elan_report_absolute(data, report, true); break; case ETP_TP_REPORT_ID: elan_report_trackpoint(data, report);