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>
Fri, 15 Apr 2022 12:15:01 +0000 (14:15 +0200)
commitdcb2273fb24cc50ea6b68fafdef24bb7ac72ebc5
tree4064eb7423dca6fd25dcaabb7840aa8ddb9b6a9e
parentd02d56b58cd3eb3226f8a4444a6e9424218b2e2a
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