]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
PCI: pnv_php: Work around switches with broken presence detection
authorTimothy Pearson <tpearson@raptorengineering.com>
Tue, 15 Jul 2025 21:36:55 +0000 (16:36 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 15 Aug 2025 10:05:08 +0000 (12:05 +0200)
commit246a476ff01818bec3614d4704b6cc4f35220a91
tree9f22037fcc13f0a9e45485a1ec8a2d2fa9ea1c44
parent398170b7fd0e0db2f8096df5206c75e5ff41415a
PCI: pnv_php: Work around switches with broken presence detection

[ Upstream commit 80f9fc2362797538ebd4fd70a1dfa838cc2c2cdb ]

The Microsemi Switchtec PM8533 PFX 48xG3 [11f8:8533] PCIe switch system
was observed to incorrectly assert the Presence Detect Set bit in its
capabilities when tested on a Raptor Computing Systems Blackbird system,
resulting in the hot insert path never attempting a rescan of the bus
and any downstream devices not being re-detected.

Work around this by additionally checking whether the PCIe data link is
active or not when performing presence detection on downstream switches'
ports, similar to the pciehp_hpc.c driver.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
Signed-off-by: Timothy Pearson <tpearson@raptorengineering.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Signed-off-by: Madhavan Srinivasan <maddy@linux.ibm.com>
Link: https://patch.msgid.link/505981576.1359853.1752615415117.JavaMail.zimbra@raptorengineeringinc.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/pci/hotplug/pnv_php.c