mirror of
https://github.com/FEX-Emu/linux.git
synced 2025-01-12 04:19:08 +00:00
PCI: shpchp: Fix AMD POGO identification
The fix for an AMD POGO erratum related to SHPC incorrectly identified the device. The workaround should be applied only for AMD POGO devices, but it was instead applied to: - all AMD bridges, and - all devices from any vendor with device ID 0x7458 Fixes: 53044f357448 ("[PATCH] PCI Hotplug: shpchp: AMD POGO errata fix") Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com> Reviewed-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
parent
f2b775f5df
commit
bed4e9cfab
@ -585,13 +585,13 @@ static int shpchp_enable_slot (struct slot *p_slot)
|
||||
ctrl_dbg(ctrl, "%s: p_slot->pwr_save %x\n", __func__, p_slot->pwr_save);
|
||||
p_slot->hpc_ops->get_latch_status(p_slot, &getstatus);
|
||||
|
||||
if (((p_slot->ctrl->pci_dev->vendor == PCI_VENDOR_ID_AMD) ||
|
||||
(p_slot->ctrl->pci_dev->device == PCI_DEVICE_ID_AMD_POGO_7458))
|
||||
if ((p_slot->ctrl->pci_dev->vendor == PCI_VENDOR_ID_AMD &&
|
||||
p_slot->ctrl->pci_dev->device == PCI_DEVICE_ID_AMD_POGO_7458)
|
||||
&& p_slot->ctrl->num_slots == 1) {
|
||||
/* handle amd pogo errata; this must be done before enable */
|
||||
/* handle AMD POGO errata; this must be done before enable */
|
||||
amd_pogo_errata_save_misc_reg(p_slot);
|
||||
retval = board_added(p_slot);
|
||||
/* handle amd pogo errata; this must be done after enable */
|
||||
/* handle AMD POGO errata; this must be done after enable */
|
||||
amd_pogo_errata_restore_misc_reg(p_slot);
|
||||
} else
|
||||
retval = board_added(p_slot);
|
||||
|
Loading…
x
Reference in New Issue
Block a user