Revert "PCI/DPC: Quirk PIO log size for certain Intel Root Ports"
This reverts commit a654d0a186
which is
commit 5459c0b7046752e519a646e1c2404852bb628459 upstream.
It breaks the Android kernel abi and can be brought back in the future
in an abi-safe way if it is really needed.
Bug: 161946584
Change-Id: I17f98a38a673caa105d9e57cee1832b0784af782
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
This commit is contained in:
parent
478632cd90
commit
49a81ed542
@ -335,16 +335,11 @@ void pci_dpc_init(struct pci_dev *pdev)
|
||||
return;
|
||||
|
||||
pdev->dpc_rp_extensions = true;
|
||||
|
||||
/* Quirks may set dpc_rp_log_size if device or firmware is buggy */
|
||||
if (!pdev->dpc_rp_log_size) {
|
||||
pdev->dpc_rp_log_size =
|
||||
(cap & PCI_EXP_DPC_RP_PIO_LOG_SIZE) >> 8;
|
||||
if (pdev->dpc_rp_log_size < 4 || pdev->dpc_rp_log_size > 9) {
|
||||
pci_err(pdev, "RP PIO log size %u is invalid\n",
|
||||
pdev->dpc_rp_log_size);
|
||||
pdev->dpc_rp_log_size = 0;
|
||||
}
|
||||
pdev->dpc_rp_log_size = (cap & PCI_EXP_DPC_RP_PIO_LOG_SIZE) >> 8;
|
||||
if (pdev->dpc_rp_log_size < 4 || pdev->dpc_rp_log_size > 9) {
|
||||
pci_err(pdev, "RP PIO log size %u is invalid\n",
|
||||
pdev->dpc_rp_log_size);
|
||||
pdev->dpc_rp_log_size = 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -5909,39 +5909,3 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x56b1, aspm_l1_acceptable_latency
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x56c0, aspm_l1_acceptable_latency);
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x56c1, aspm_l1_acceptable_latency);
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_PCIE_DPC
|
||||
/*
|
||||
* Intel Tiger Lake and Alder Lake BIOS has a bug that clears the DPC
|
||||
* RP PIO Log Size of the integrated Thunderbolt PCIe Root Ports.
|
||||
*/
|
||||
static void dpc_log_size(struct pci_dev *dev)
|
||||
{
|
||||
u16 dpc, val;
|
||||
|
||||
dpc = pci_find_ext_capability(dev, PCI_EXT_CAP_ID_DPC);
|
||||
if (!dpc)
|
||||
return;
|
||||
|
||||
pci_read_config_word(dev, dpc + PCI_EXP_DPC_CAP, &val);
|
||||
if (!(val & PCI_EXP_DPC_CAP_RP_EXT))
|
||||
return;
|
||||
|
||||
if (!((val & PCI_EXP_DPC_RP_PIO_LOG_SIZE) >> 8)) {
|
||||
pci_info(dev, "Overriding RP PIO Log Size to 4\n");
|
||||
dev->dpc_rp_log_size = 4;
|
||||
}
|
||||
}
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x461f, dpc_log_size);
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x462f, dpc_log_size);
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x463f, dpc_log_size);
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x466e, dpc_log_size);
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x9a23, dpc_log_size);
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x9a25, dpc_log_size);
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x9a27, dpc_log_size);
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x9a29, dpc_log_size);
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x9a2b, dpc_log_size);
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x9a2d, dpc_log_size);
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x9a2f, dpc_log_size);
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x9a31, dpc_log_size);
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user