Skip to content

Commit 47807ab

Browse files
committed
Merge branch 'pci/aer'
- Mask reporting of Mask Replay Timer Timeout Correctable Errors in the bridge above Genesys GL975x SD host controllers; the errors are caused by a GL975x hardware defect and they may lead to AER interrupts that prevent system suspend (Kai-Heng Feng) - Update URL of aer-inject tool (Kuppuswamy Sathyanarayanan) * pci/aer: PCI/AER: Update aer-inject tool source URL PCI: Mask Replay Timer Timeout errors for Genesys GL975x SD host controller
2 parents 4cece76 + a29e529 commit 47807ab

File tree

4 files changed

+23
-3
lines changed

4 files changed

+23
-3
lines changed

Documentation/PCI/pcieaer-howto.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -241,7 +241,7 @@ After reboot with new kernel or insert the module, a device file named
241241
Then, you need a user space tool named aer-inject, which can be gotten
242242
from:
243243

244-
https://git.kernel.org/cgit/linux/kernel/git/gong.chen/aer-inject.git/
244+
https://github.com/intel/aer-inject.git
245245

246246
More information about aer-inject can be found in the document in
247247
its source code.

drivers/pci/pcie/Kconfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ config PCIEAER_INJECT
4747
error injection can fake almost all kinds of errors with the
4848
help of a user space helper tool aer-inject, which can be
4949
gotten from:
50-
https://git.kernel.org/cgit/linux/kernel/git/gong.chen/aer-inject.git/
50+
https://github.com/intel/aer-inject.git
5151

5252
config PCIEAER_CXL
5353
bool "PCI Express CXL RAS support"

drivers/pci/pcie/aer_inject.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
* trigger various real hardware errors. Software based error
77
* injection can fake almost all kinds of errors with the help of a
88
* user space helper tool aer-inject, which can be gotten from:
9-
* https://git.kernel.org/cgit/linux/kernel/git/gong.chen/aer-inject.git/
9+
* https://github.com/intel/aer-inject.git
1010
*
1111
* Copyright 2009 Intel Corporation.
1212
* Huang Ying <[email protected]>

drivers/pci/quirks.c

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6261,3 +6261,23 @@ static void pci_fixup_d3cold_delay_1sec(struct pci_dev *pdev)
62616261
pdev->d3cold_delay = 1000;
62626262
}
62636263
DECLARE_PCI_FIXUP_FINAL(0x5555, 0x0004, pci_fixup_d3cold_delay_1sec);
6264+
6265+
#ifdef CONFIG_PCIEAER
6266+
static void pci_mask_replay_timer_timeout(struct pci_dev *pdev)
6267+
{
6268+
struct pci_dev *parent = pci_upstream_bridge(pdev);
6269+
u32 val;
6270+
6271+
if (!parent || !parent->aer_cap)
6272+
return;
6273+
6274+
pci_info(parent, "mask Replay Timer Timeout Correctable Errors due to %s hardware defect",
6275+
pci_name(pdev));
6276+
6277+
pci_read_config_dword(parent, parent->aer_cap + PCI_ERR_COR_MASK, &val);
6278+
val |= PCI_ERR_COR_REP_TIMER;
6279+
pci_write_config_dword(parent, parent->aer_cap + PCI_ERR_COR_MASK, val);
6280+
}
6281+
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_GLI, 0x9750, pci_mask_replay_timer_timeout);
6282+
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_GLI, 0x9755, pci_mask_replay_timer_timeout);
6283+
#endif

0 commit comments

Comments
 (0)