public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Maarten Lankhorst <m.b.lankhorst@gmail.com>
To: Sarah Sharp <sarah.a.sharp@linux.intel.com>
Cc: linux-usb@vger.kernel.org,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: device plugged into xhci port not detected after a resume
Date: Wed, 15 Jun 2011 19:39:46 +0200	[thread overview]
Message-ID: <4DF8EE62.3060407@gmail.com> (raw)
In-Reply-To: <20110615165842.GB5382@xanatos>

Op 15-06-11 18:58, Sarah Sharp schreef:
> On Wed, Jun 15, 2011 at 09:07:11AM +0200, Maarten Lankhorst wrote:
>> I plugged a simple usb mouse in xhci that isn't found after a resume.
>>
>> It's with the same lovely controller as I used with the previous bug.
>> Plugging in the controller to the same port doesn't cause it to be
>> detected again, I need to remodprobe xhci-hcd
> I will have to look at the log closely to be sure that this isn't a
> software issue, but it seems like the host controller just died after
> being suspended.
>
>
>> [  505.821216] xhci_hcd 0000:04:00.0: Queueing ctrl tx for slot id 1, ep 0
> ...
>> [  510.805001] xhci_hcd 0000:04:00.0: Cancel URB ffff8801c7a0ae40
> The xHCI driver submits a control transfer (probably to read the
> descriptor from your mouse) and the host doesn't give it back.  It times
> out, so the xHCI driver issues a Stop Endpoint command to allow the
> driver to take the control transfer off the endpoint ring.
>
>> [  515.794819] xhci_hcd 0000:04:00.0: xHCI host not responding to stop endpoint command.
> But the host doesn't respond to that command, so the xHCI driver assumes
> the hardware is hosed:
>
>> [  515.794823] xhci_hcd 0000:04:00.0: Assuming host is dying, halting host.
>> [  515.794830] xhci_hcd 0000:04:00.0: // Halt the HC
>> [  515.794840] xhci_hcd 0000:04:00.0: Killing URBs for slot ID 1, ep index 0
>> [  515.794847] xhci_hcd 0000:04:00.0: Killing URBs for slot ID 1, ep index 2
>> [  515.794850] xhci_hcd 0000:04:00.0: Killing URBs for slot ID 1, ep index 4
>> [  515.794854] xhci_hcd 0000:04:00.0: Calling usb_hc_died()
>> [  515.794856] xhci_hcd 0000:04:00.0: HC died; cleaning up
>> [  515.794860] xhci_hcd 0000:04:00.0: xHCI host controller is dead.
> Does the host controller work when you don't have any devices plugged
> in during resume?  I.e. unplug the mouse and then re-plug it in on
> resume.  Does suspend work when other devices are left plugged in?
>
> Does hibernate work, either with no devices plugged in, or the mouse
> plugged in?  If it does work, the host controller may not be able to
> handle the context save and restore during suspend/resume, and we may
> need to unconditionally tell the USB core that the host lost power
> across suspend.
Yeah, manually overriding the resume function works. Tested with

-	if ((temp & STS_SRE) || hibernated) {
+	if ((temp & STS_SRE) || hibernated || 1) {

~Maarten


  parent reply	other threads:[~2011-06-15 17:39 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-15  7:07 device plugged into xhci port not detected after a resume Maarten Lankhorst
2011-06-15 15:38 ` Greg KH
2011-06-15 16:17   ` Maarten Lankhorst
2011-06-15 16:58 ` Sarah Sharp
2011-06-15 17:29   ` Maarten Lankhorst
2011-06-15 17:39   ` Maarten Lankhorst [this message]
2011-06-15 19:59     ` Sarah Sharp
2011-06-15 20:19       ` Sarah Sharp
2011-06-15 20:29       ` [PATCH] xhci: Add reset on resume quirk for asrock p67 host Maarten Lankhorst
2011-06-15 20:36         ` Sarah Sharp
2011-06-15 20:38           ` Maarten Lankhorst
2011-06-15 20:39             ` Sarah Sharp
2011-06-15 21:00           ` Alan Stern
2011-06-15 21:21             ` Sarah Sharp
2011-06-15 21:41               ` Maarten Lankhorst
2011-06-15 22:15                 ` Maarten Lankhorst

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=4DF8EE62.3060407@gmail.com \
    --to=m.b.lankhorst@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=sarah.a.sharp@linux.intel.com \
    /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