Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1295923
| From | Mika Westerberg <mika.westerberg@linux.intel.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [RESEND] Lenovo Yoga 900 touchpad issues |
| Date | 2015-12-21 12:40 +0100 |
| Message-ID | <qI6YN-5TQ-9@gated-at.bofh.it> (permalink) |
| References | (1 earlier) <qGgzg-8nq-13@gated-at.bofh.it> <qGtd8-7St-9@gated-at.bofh.it> <qH4w2-6U7-17@gated-at.bofh.it> <qH5s6-7vm-23@gated-at.bofh.it> <qH5V8-7UF-3@gated-at.bofh.it> |
| Organization | Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo |
On Fri, Dec 18, 2015 at 05:10:31PM +0100, Benjamin Tissoires wrote: > After turning this around, I think I finally got what was going on (and > yes, it's basically a race that should have been caught long ago): > - during resume, the i2c-hid driver calls reset, which is a long (few > ms) operation. > - hid-multitouch is also called during resume, and right after i2c-hid > - hid-multiotuch immediately emits for touchpads a set input mode (this > was unseen with touchscreens because they do not have to be switched > into a proper mode) > - there is a race between hid-multitouch accessing the features while > the device is still resetting. And our reset interrupt never gets to > us because there was an other operation in progress to request/set > reports > > So the actual fix would be to make hid-multitouch wait until we reset > i2c-hid. The driver used for touchpad is actually hid-rmi but you are right, it tries to set rmi mode (or something) during its rmi_post_reset() that then confuses the i2c-hid driver. Thanks for the analysis :-) > This should be done by either a mutex or a spinlock in > i2c_hid_output_raw_report() and i2c_hid_resume() that would protect a > flag set during suspend and cleared after resume. Makes sense. I'll make a patch that does this and submit it soon. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[RESEND] Lenovo Yoga 900 touchpad issues Nish Aravamudan <nish.aravamudan@gmail.com> - 2015-12-15 20:20 +0100
Re: [RESEND] Lenovo Yoga 900 touchpad issues Mika Westerberg <mika.westerberg@linux.intel.com> - 2015-12-16 10:30 +0100
Re: [RESEND] Lenovo Yoga 900 touchpad issues Jiri Kosina <jikos@kernel.org> - 2015-12-16 14:20 +0100
Re: [RESEND] Lenovo Yoga 900 touchpad issues Nish Aravamudan <nish.aravamudan@gmail.com> - 2015-12-17 00:00 +0100
Re: [RESEND] Lenovo Yoga 900 touchpad issues Benjamin Tissoires <benjamin.tissoires@redhat.com> - 2015-12-17 11:00 +0100
Re: [RESEND] Lenovo Yoga 900 touchpad issues Nish Aravamudan <nish.aravamudan@gmail.com> - 2015-12-17 18:00 +0100
Re: [RESEND] Lenovo Yoga 900 touchpad issues Benjamin Tissoires <benjamin.tissoires@redhat.com> - 2015-12-17 18:30 +0100
Re: [RESEND] Lenovo Yoga 900 touchpad issues Nish Aravamudan <nish.aravamudan@gmail.com> - 2015-12-17 18:40 +0100
Re: [RESEND] Lenovo Yoga 900 touchpad issues Nish Aravamudan <nish.aravamudan@gmail.com> - 2015-12-17 00:00 +0100
Re: [RESEND] Lenovo Yoga 900 touchpad issues Mika Westerberg <mika.westerberg@linux.intel.com> - 2015-12-18 15:50 +0100
Re: [RESEND] Lenovo Yoga 900 touchpad issues Mika Westerberg <mika.westerberg@linux.intel.com> - 2015-12-18 16:50 +0100
Re: [RESEND] Lenovo Yoga 900 touchpad issues Benjamin Tissoires <benjamin.tissoires@redhat.com> - 2015-12-18 17:20 +0100
Re: [RESEND] Lenovo Yoga 900 touchpad issues Mika Westerberg <mika.westerberg@linux.intel.com> - 2015-12-21 12:40 +0100
Re: [RESEND] Lenovo Yoga 900 touchpad issues Nish Aravamudan <nish.aravamudan@gmail.com> - 2015-12-18 19:00 +0100
csiph-web