From: Kai-Heng Feng <kai.heng.feng@canonical.com>
To: Mathias Nyman <mathias.nyman@linux.intel.com>
Cc: Felipe Balbi <felipe.balbi@linux.intel.com>,
Oliver Neukum <oneukum@suse.com>,
Mika Westerberg <mika.westerberg@linux.intel.com>,
Kent Lin <kent.lin@canonical.com>,
Linux PCI <linux-pci@vger.kernel.org>,
Linux USB List <linux-usb@vger.kernel.org>
Subject: Re: Titan Ridge xHCI may stop to working after re-plugging the dock
Date: Thu, 25 Jul 2019 21:24:53 +0800 [thread overview]
Message-ID: <203745C2-85AF-4A37-8628-636632D14564@canonical.com> (raw)
In-Reply-To: <8113f4a4-e96e-9b73-cd7a-1dbb800d68bb@linux.intel.com>
at 22:45, Mathias Nyman <mathias.nyman@linux.intel.com> wrote:
> On 22.7.2019 12.44, Kai-Heng Feng wrote:
>>>>>>> Hi Mika and Mathias,
>>>>>>>
>>>>>>> I’ve filed a bug [1] which renders docking station unusable.
>>>>>>>
>>>>>>> I am not sure it's a bug in PCI, Thunderbolt or xHCI so raise the
>>>>>>> issue
>>>>>>> to
>>>>>>> you both.
>>>>>>>
>>>>>>> [1] https://bugzilla.kernel.org/show_bug.cgi?id=203885
>>>>>>>
>>>>>>> Kai-Heng
>>>>
>>>> I upgraded the system firmware, TBT firmware and docking station
>>>> firmware
>>>> to latest, and used latest mainline kernel.
>>>> Now the issue can be reproduced at the very first time I plugged the
>>>> docking station.
>> Request log attached to Bugzilla.
>
> After docking station unplug we see Transfer errors from
> devices connected to Titan Ridge xHC, driver tries to recover, fails,
> usb devices are disconnected.
>
> After this xhci driver runtime suspends xHC controller as runtime pm is
> allowed
> by default for Titan Ridge xHC controllers.
>
> Interesting parts from log:
>
>>>> Unplug Docking Station <<<
>
> [ 328.102279] xhci_hcd 0000:39:00.0: Transfer error for slot 36 ep 6 on
> endpoint
> [ 328.118279] xhci_hcd 0000:39:00.0: Transfer error for slot 36 ep 6 on
> endpoint
> [ 328.134291] xhci_hcd 0000:39:00.0: Transfer error for slot 36 ep 6 on
> endpoint
> [ 328.150355] xhci_hcd 0000:39:00.0: Transfer error for slot 36 ep 6 on
> endpoint
> [ 328.166342] xhci_hcd 0000:39:00.0: Transfer error for slot 36 ep 6 on
> endpoint
> [ 332.178710] usb usb4-port2: Cannot enable. Maybe the USB cable is bad?
> [ 332.178765] usb 4-2: USB disconnect, device number 35
> [ 332.178769] usb 4-2.3: USB disconnect, device number 36
> [ 332.179973] usb 4-2.4: USB disconnect, device number 37
> [ 332.414618] xhci_hcd 0000:39:00.0: set port remote wake mask, actual
> port 0 status = 0xe0002a0
> [ 332.414639] xhci_hcd 0000:39:00.0: set port remote wake mask, actual
> port 1 status = 0xe0002b0
> [ 332.414693] xhci_hcd 0000:39:00.0: xhci_hub_status_data: stopping port
> polling.
> [ 332.414703] xhci_hcd 0000:39:00.0: xhci_suspend: stopping port polling.
> [ 332.414719] xhci_hcd 0000:39:00.0: // Setting command ring address to
> 0x487da9001
>
>>>> Plug Docking Station <<<
>
> [ 346.455568] pci_raw_set_power_state: 25 callbacks suppressed
> [ 346.455574] xhci_hcd 0000:39:00.0: Refused to change power state,
> currently in D3
> [ 346.539451] xhci_hcd 0000:39:00.0: enabling device (0000 -> 0002)
> [ 346.539482] xhci_hcd 0000:39:00.0: // Setting command ring address to
> 0x487da903f
> [ 346.539487] xhci_hcd 0000:39:00.0: WARN: xHC restore state timeout
> [ 346.539489] xhci_hcd 0000:39:00.0: PCI post-resume error -110!
> [ 346.539490] xhci_hcd 0000:39:00.0: HC died; cleaning up
>
>>>> We don't have 0000:39:00 anymore <<<
>
> When docking station is plugged back we try to resume Titan Ridge xHC,
> PCI log shows that changing power state to D0 failed, xHC is still in D3.
> Resume process continues anyway, and xhci driver tries to restore state,
> but fails.
> Usb core will assume HC died if the pci resume callback failed
>
> Does disabling runtime PM for Titan Ridge xHC help?
Yes, disabling runtime PM can workaround this issue.
Kai-Heng
>
> -Mathias
next prev parent reply other threads:[~2019-07-25 13:25 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-07-09 13:10 Titan Ridge xHCI may stop to working after re-plugging the dock Kai-Heng Feng
2019-07-10 11:49 ` Oliver Neukum
2019-07-19 7:23 ` Felipe Balbi
2019-07-19 10:29 ` Kai Heng Feng
2019-07-19 10:51 ` Felipe Balbi
2019-07-22 9:44 ` Kai-Heng Feng
2019-07-24 14:45 ` Mathias Nyman
2019-07-25 13:24 ` Kai-Heng Feng [this message]
2019-08-13 6:50 ` Kai-Heng Feng
2019-08-14 13:34 ` Mathias Nyman
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=203745C2-85AF-4A37-8628-636632D14564@canonical.com \
--to=kai.heng.feng@canonical.com \
--cc=felipe.balbi@linux.intel.com \
--cc=kent.lin@canonical.com \
--cc=linux-pci@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=mathias.nyman@linux.intel.com \
--cc=mika.westerberg@linux.intel.com \
--cc=oneukum@suse.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;
as well as URLs for NNTP newsgroup(s).