linux-input.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
To: Daniel Manrique <daniel.manrique@canonical.com>
Cc: linux-input@vger.kernel.org
Subject: Re: Bug: touchpad unresponsive after resume from S3 (psmouse driver)
Date: Tue, 29 Nov 2011 16:17:48 -0800	[thread overview]
Message-ID: <20111130001748.GA2270@core.coreip.homeip.net> (raw)
In-Reply-To: <4ED535E7.5030108@canonical.com>

On Tue, Nov 29, 2011 at 02:43:35PM -0500, Daniel Manrique wrote:
> On 11-11-29 12:53 PM, Dmitry Torokhov wrote:
> > Hi Daniel,
> > 
> > On Tue, Nov 29, 2011 at 11:26:19AM -0500, Daniel Manrique wrote:
> >> Hello,
> >>
> >> I apologize for sending this bug report directly; with the kernel.org bugtracker
> >> down I was told this was the best option for the time being. If this is not
> >> correct, could you please let me know of a good place to submit this bug report?
> >>
> >> I have several Dell laptops with Synaptics touchpads, particularly a group of
> >> Vostro V13 systems. On these, after a suspend/resume cycle, the touchpad
> >> (Synaptics) is unresponsive; a workaround is to rmmod psmouse; modprobe psmouse.
> >>
> >> This was first reported on kernel 2.6.38, although I think the issue has been
> >> present from as early as 2.6.32. I verified it for sure with Ubuntu 2.6.38
> >> kernels, 3.0.0 kernels, and a 3.2.0 kernel from the development release, as well
> >> as a "mainline" 3.1.0-rc10 kernel.
> >>
> >> Since this problem was seen on Ubuntu, it's filed on the Launchpad bug tracker.
> >> The first report I can find is this one:
> >>
> >> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/715267
> >>
> >> This includes a series of log messages I don't see on my systems. I then filed
> >> this other bug:
> >>
> >> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/879650
> >>
> >> The last one contains specific information from one of my systems (a Vostro V13).
> >>
> >> I'd really appreciate any help or guidance on how to solve this problem. If you
> >> need me to collect any information or run any tests on these machines, please
> >> don't hesitate to ask, these systems are primarily used for testing.
> >>
> > 
> > Please do:
> > 
> >  - enable i8042 debug (echo 1 > /sys/module/i8042/parameters/debug)
> >  - rmmod psmouse;
> >  - suspend/resume;
> >  - collect dmesg;
> >  - suspend/resume;
> >  - collect dmesg again
> > 
> > and we'll have to try and find what we do differently.
> > 
> > Thanks.
> > 
> 
> Hi Dmitry,
> 
> Thanks so much for the quick reply!
> 
> I just ran the tests you requested with some extra steps which I hope won't
> confuse things. Here's the sequence I followed:
> 
> - Enabled i8042 debug
> - sudo rmmod psmouse. Touchpad of course becomes unresponsive.
> - sudo pm-suspend
> - Wake the machine by pressing power
> - At this point touchpad is unresponsive.
> - Collected dmesg-1.txt
> - sudo pm-suspend
> - wake the machine by pressing power
> - At this point touchpad is still unresponsive.
> - Collected dmesg-2.txt
> - sudo modprobe psmouse. Touchpad begins responding.
> - Collected dmesg-3.txt
> - sudo pm-suspend
> - wake the machine by pressing power
> - At this point touchpad is again unresponsive.
> - Collected dmesg-4.txt
> 
> To avoid attaching largish files to this email, I put the logs on a
> publically-accessible http server at:
> http://people.canonical.com/~roadmr/lp715267/. Please let me know if you prefer
> something else.
> 

Hmm, it just does not want to admit that it is synaptics after reset.
Does the patch below help any?

-- 
Dmitry


Input: synaptics - delay in reconnect

From: Dmitry Torokhov <dmitry.torokhov@gmail.com>

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
---

 drivers/input/mouse/synaptics.c |   12 ++++++++++++
 1 files changed, 12 insertions(+), 0 deletions(-)


diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
index 06c9ee5..fa127ec 100644
--- a/drivers/input/mouse/synaptics.c
+++ b/drivers/input/mouse/synaptics.c
@@ -1279,6 +1279,7 @@ static void synaptics_disconnect(struct psmouse *psmouse)
 	psmouse->private = NULL;
 }
 
+#include <linux/delay.h>
 static int synaptics_reconnect(struct psmouse *psmouse)
 {
 	struct synaptics_data *priv = psmouse->private;
@@ -1288,6 +1289,17 @@ static int synaptics_reconnect(struct psmouse *psmouse)
 
 	do {
 		psmouse_reset(psmouse);
+		if (retry) {
+			unsigned char param[2];
+
+			psmouse_info(psmouse, "Delaying after reset.\n");
+			ssleep(1);
+
+			psmouse_info(psmouse, "Querying ID.\n");
+			param[0] = 0xa5;
+			error = ps2_command(&psmouse->ps2dev, param, PSMOUSE_CMD_GETID);
+			psmouse_info(psmouse, "ID: %x %x (%d).\n", param[0], param[1], error);
+		}
 		error = synaptics_detect(psmouse, 0);
 	} while (error && ++retry < 3);
 

  reply	other threads:[~2011-11-30  0:17 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-11-29 16:26 Bug: touchpad unresponsive after resume from S3 (psmouse driver) Daniel Manrique
2011-11-29 17:53 ` Dmitry Torokhov
2011-11-29 19:43   ` Daniel Manrique
2011-11-30  0:17     ` Dmitry Torokhov [this message]
2011-11-30 15:18       ` Daniel Manrique
2011-12-01  5:15         ` Dmitry Torokhov
2011-12-01 20:39           ` Daniel Manrique
2011-12-02  6:16             ` Dmitry Torokhov
2011-12-02 17:39               ` Daniel Manrique

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20111130001748.GA2270@core.coreip.homeip.net \
    --to=dmitry.torokhov@gmail.com \
    --cc=daniel.manrique@canonical.com \
    --cc=linux-input@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).