]> git.baikalelectronics.ru Git - kernel.git/commit
x86/PCI: Avoid AMD SB7xx EHCI USB wakeup defect
authorKai-Heng Feng <kai.heng.feng@canonical.com>
Fri, 16 Jun 2017 09:40:54 +0000 (17:40 +0800)
committerBjorn Helgaas <bhelgaas@google.com>
Fri, 30 Jun 2017 16:15:08 +0000 (11:15 -0500)
commitf05548e5868b483fb561dbf5ecbb4c2d42cad998
treeaf6b694bf06b9d73d45955ba34e19c1c70819032
parentef1cf2d3c21e1242fb228660c4c53f56bdf94c9d
x86/PCI: Avoid AMD SB7xx EHCI USB wakeup defect

On an AMD Carrizo laptop, when EHCI runtime PM is enabled, EHCI ports do
not assert PME# for device plug/unplug events while in D3.

As Alan Stern points out [1], the PME signal is not enabled when controller
is in D3, therefore it's not being woken up when new devices get plugged
in.

Testing shows PME signal works when the EHCI power state is D2.

Clear the PCI_PM_CAP_PME_D3 and PCI_PM_CAP_PME_D3cold bits in
dev->pme_support to indicate the device will not assert PME# from those
states.

[1] http://lkml.kernel.org/r/Pine.LNX.4.44L0.1706121010010.2092-100000@iolanthe.rowland.org
Link: https://bugzilla.kernel.org/show_bug.cgi?id=196091
Link: https://support.amd.com/TechDocs/46837.pdf
Link: https://support.amd.com/TechDocs/42413.pdf
Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
[bhelgaas: changelog, add parens in quirk]
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
arch/x86/pci/fixup.c