[Skiboot] [PATCH 15/16] hw/phb3: Override root slot's prepare_link_change() with PHB's
Gavin Shan
gwshan at linux.vnet.ibm.com
Fri Sep 16 15:05:22 AEST 2016
For PCI slot behind root port, its prepare_link_change() should be
same to PHB's. Otherwise, the UTL events cannot be masked when the
adapter behind the slot, leading to EEH error on removing the adapter.
Signed-off-by: Gavin Shan <gwshan at linux.vnet.ibm.com>
---
hw/phb3.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/hw/phb3.c b/hw/phb3.c
index 1c83d5e..050c69b 100644
--- a/hw/phb3.c
+++ b/hw/phb3.c
@@ -284,6 +284,14 @@ static void phb3_root_port_init(struct phb *phb, struct pci_device *dev,
uint16_t val16;
uint32_t val32;
+ /* Use PHB's callback so that the UTL events will be masked
+ * or unmasked when the link is down or up.
+ */
+ if (dev->slot && dev->slot->ops.prepare_link_change &&
+ phb->slot && phb->slot->ops.prepare_link_change)
+ dev->slot->ops.prepare_link_change =
+ phb->slot->ops.prepare_link_change;
+
/* Mask UTL link down event if root slot supports surprise
* hotplug as the event should be handled by hotplug driver
* instead of EEH subsystem.
--
2.1.0
More information about the Skiboot
mailing list