diff options
author | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2020-07-21 22:17:27 -0700 |
---|---|---|
committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2020-07-21 22:17:27 -0700 |
commit | a5c33d5f745ca1ecfbd692a531ef2a12bfeeb57e (patch) | |
tree | 7f46722dcd4bdce411612d9ccb83651795dad5e3 /drivers/input/mouse | |
parent | 9b031c86506cef9acae45e61339fcf9deaabb793 (diff) | |
parent | a50ca29523b18baea548bdf5df9b4b923c2bb4f6 (diff) | |
download | linux-a5c33d5f745ca1ecfbd692a531ef2a12bfeeb57e.tar.bz2 |
Merge branch 'for-linus' into next
Sync up with 'for-linus' branch to resolve conflict in Elan touchpad
driver.
Diffstat (limited to 'drivers/input/mouse')
-rw-r--r-- | drivers/input/mouse/elan_i2c_core.c | 9 | ||||
-rw-r--r-- | drivers/input/mouse/synaptics.c | 1 |
2 files changed, 6 insertions, 4 deletions
diff --git a/drivers/input/mouse/elan_i2c_core.c b/drivers/input/mouse/elan_i2c_core.c index 4b6e2dffc0ea..8a0f224da423 100644 --- a/drivers/input/mouse/elan_i2c_core.c +++ b/drivers/input/mouse/elan_i2c_core.c @@ -997,6 +997,8 @@ static void elan_report_absolute(struct elan_tp_data *data, u8 *packet, u8 hover_info = packet[ETP_HOVER_INFO_OFFSET]; bool contact_valid, hover_event; + pm_wakeup_event(&data->client->dev, 0); + hover_event = hover_info & BIT(6); for (i = 0; i < ETP_MAX_FINGERS; i++) { @@ -1021,6 +1023,8 @@ static void elan_report_trackpoint(struct elan_tp_data *data, u8 *report) u8 *packet = &report[ETP_REPORT_ID_OFFSET + 1]; int x, y; + pm_wakeup_event(&data->client->dev, 0); + if (!data->tp_input) { dev_warn_once(&data->client->dev, "received a trackpoint report while no trackpoint device has been created. Please report upstream.\n"); @@ -1045,7 +1049,6 @@ static void elan_report_trackpoint(struct elan_tp_data *data, u8 *report) static irqreturn_t elan_isr(int irq, void *dev_id) { struct elan_tp_data *data = dev_id; - struct device *dev = &data->client->dev; int error; u8 report[ETP_MAX_REPORT_LEN]; @@ -1063,8 +1066,6 @@ static irqreturn_t elan_isr(int irq, void *dev_id) if (error) goto out; - pm_wakeup_event(dev, 0); - switch (report[ETP_REPORT_ID_OFFSET]) { case ETP_REPORT_ID: elan_report_absolute(data, report, false); @@ -1076,7 +1077,7 @@ static irqreturn_t elan_isr(int irq, void *dev_id) elan_report_trackpoint(data, report); break; default: - dev_err(dev, "invalid report id data (%x)\n", + dev_err(&data->client->dev, "invalid report id data (%x)\n", report[ETP_REPORT_ID_OFFSET]); } diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c index 758dae8d6500..4b81b2d0fe06 100644 --- a/drivers/input/mouse/synaptics.c +++ b/drivers/input/mouse/synaptics.c @@ -179,6 +179,7 @@ static const char * const smbus_pnp_ids[] = { "LEN0093", /* T480 */ "LEN0096", /* X280 */ "LEN0097", /* X280 -> ALPS trackpoint */ + "LEN0099", /* X1 Extreme 1st */ "LEN009b", /* T580 */ "LEN200f", /* T450s */ "LEN2044", /* L470 */ |