git://ftp.safe.ca
/
safe
/
jmp
/
linux-2.6
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'topic/core-cleanup' into for-linus
[safe/jmp/linux-2.6]
/
drivers
/
pci
/
pcie
/
aer
/
aerdrv.c
diff --git
a/drivers/pci/pcie/aer/aerdrv.c
b/drivers/pci/pcie/aer/aerdrv.c
index
aa495ad
..
7a711ee
100644
(file)
--- a/
drivers/pci/pcie/aer/aerdrv.c
+++ b/
drivers/pci/pcie/aer/aerdrv.c
@@
-244,11
+244,17
@@
static pci_ers_result_t aer_root_reset(struct pci_dev *dev)
/* Assert Secondary Bus Reset */
pci_read_config_word(dev, PCI_BRIDGE_CONTROL, &p2p_ctrl);
/* Assert Secondary Bus Reset */
pci_read_config_word(dev, PCI_BRIDGE_CONTROL, &p2p_ctrl);
- p2p_ctrl |= PCI_
CB_BRIDGE_CTL_CB
_RESET;
+ p2p_ctrl |= PCI_
BRIDGE_CTL_BUS
_RESET;
pci_write_config_word(dev, PCI_BRIDGE_CONTROL, p2p_ctrl);
pci_write_config_word(dev, PCI_BRIDGE_CONTROL, p2p_ctrl);
+ /*
+ * we should send hot reset message for 2ms to allow it time to
+ * propogate to all downstream ports
+ */
+ msleep(2);
+
/* De-assert Secondary Bus Reset */
/* De-assert Secondary Bus Reset */
- p2p_ctrl &= ~PCI_
CB_BRIDGE_CTL_CB
_RESET;
+ p2p_ctrl &= ~PCI_
BRIDGE_CTL_BUS
_RESET;
pci_write_config_word(dev, PCI_BRIDGE_CONTROL, p2p_ctrl);
/*
pci_write_config_word(dev, PCI_BRIDGE_CONTROL, p2p_ctrl);
/*