public inbox for linux-usb@vger.kernel.org
 help / color / mirror / Atom feed
From: Dominik Winecki <dominikwinecki@gmail.com>
To: linux-usb@vger.kernel.org
Subject: xHCI over-current causing pm loop
Date: Sat, 15 May 2021 22:17:07 -0400	[thread overview]
Message-ID: <YKCAoxmr+7bVo63X@hyperion> (raw)

Hello,

I've got an issue on my laptop (Dell XPS 9570 with an i7-7700HQ) that
I'm trying to fix. Multiple usb ports are reporting over-current, despite
nothing being plugged in:

Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 138a:0091 Validity Sensors, Inc. VFS7552 Touch Fingerprint Sensor
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Two kworkers running runtime pm are trying to suspend the usb 2 & 3 root hubs.
The xHCI driver will not suspend a hub with over-current triggered
(since e9fb08d617bf) so it fails, resumes the hub, and pm tries again.
This is taking two CPU cores, but it stops if a device of the same usb
version is plugged in, or if I set the power control policy to on.
Also, this is blocking system suspend, but that's expected behavior.

Reverting the e9fb08d617bf check fixes both issues for me, but that may cause
system halts in other systems. Making it a non-retriable suspend failure
stops the kworkers but then it will never suspend after an OC event.

Does it make sense to fix this in the USB driver? Or is this a PM issue?
I'd rather fix my over-current issue, but taking two cpus whenever xHCI has
a no-device over-current reading seems like a bug.

Thanks,
Dominik

             reply	other threads:[~2021-05-16  2:17 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-16  2:17 Dominik Winecki [this message]
2021-05-17 14:03 ` xHCI over-current causing pm loop Alan Stern

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=YKCAoxmr+7bVo63X@hyperion \
    --to=dominikwinecki@gmail.com \
    --cc=linux-usb@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