Commit 31d31fa5 authored by Jiri Kosina's avatar Jiri Kosina

Merge branch 'for-5.12/multitouch' into for-linus

- hid-multitouch devices should be put into high-latency mode when
  suspended in order to be in line with Windows Precision Touchpad
  guidelines. From Blaž Hrastnik.
parents fc590a35 c7aa374e
...@@ -1747,6 +1747,13 @@ static int mt_probe(struct hid_device *hdev, const struct hid_device_id *id) ...@@ -1747,6 +1747,13 @@ static int mt_probe(struct hid_device *hdev, const struct hid_device_id *id)
} }
#ifdef CONFIG_PM #ifdef CONFIG_PM
static int mt_suspend(struct hid_device *hdev, pm_message_t state)
{
/* High latency is desirable for power savings during S3/S0ix */
mt_set_modes(hdev, HID_LATENCY_HIGH, true, true);
return 0;
}
static int mt_reset_resume(struct hid_device *hdev) static int mt_reset_resume(struct hid_device *hdev)
{ {
mt_release_contacts(hdev); mt_release_contacts(hdev);
...@@ -1762,6 +1769,8 @@ static int mt_resume(struct hid_device *hdev) ...@@ -1762,6 +1769,8 @@ static int mt_resume(struct hid_device *hdev)
hid_hw_idle(hdev, 0, 0, HID_REQ_SET_IDLE); hid_hw_idle(hdev, 0, 0, HID_REQ_SET_IDLE);
mt_set_modes(hdev, HID_LATENCY_NORMAL, true, true);
return 0; return 0;
} }
#endif #endif
...@@ -2155,6 +2164,7 @@ static struct hid_driver mt_driver = { ...@@ -2155,6 +2164,7 @@ static struct hid_driver mt_driver = {
.event = mt_event, .event = mt_event,
.report = mt_report, .report = mt_report,
#ifdef CONFIG_PM #ifdef CONFIG_PM
.suspend = mt_suspend,
.reset_resume = mt_reset_resume, .reset_resume = mt_reset_resume,
.resume = mt_resume, .resume = mt_resume,
#endif #endif
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment