PCI: pciehp: Add Qualcomm quirk for Command Completed erratum
authorManivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Thu, 10 Feb 2022 14:50:03 +0000 (20:20 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 13 Apr 2022 19:00:57 +0000 (21:00 +0200)
commitc66cc0404367fe0bd3e1e458ff9a238078fd3a39
tree2afbe15403850b1bb99c6ff8fccdaf7abb1c6e89
parentb1b27b0e8d489b40607127e26af70e5571bf9201
PCI: pciehp: Add Qualcomm quirk for Command Completed erratum

[ Upstream commit 9f72d4757cbe4d1ed669192f6d23817c9e437c4b ]

The Qualcomm PCI bridge device (Device ID 0x0110) found in chipsets such as
SM8450 does not set the Command Completed bit unless writes to the Slot
Command register change "Control" bits.

This results in timeouts like below:

  pcieport 0001:00:00.0: pciehp: Timeout on hotplug command 0x03c0 (issued 2020 msec ago)

Add the device to the Command Completed quirk to mark commands "completed"
immediately unless they change the "Control" bits.

Link: https://lore.kernel.org/r/20220210145003.135907-1-manivannan.sadhasivam@linaro.org
Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/pci/hotplug/pciehp_hpc.c