1. 03 6月, 2015 1 次提交
  2. 11 4月, 2015 2 次提交
  3. 24 3月, 2015 1 次提交
    • G
      powerpc/eeh: Do probe on pci_dn · ff57b454
      Gavin Shan 提交于
      Originally, EEH core probes on device_node or pci_dev to populate
      EEH devices and PEs, which conflicts with the fact: SRIOV VFs are
      usually enabled and created by PF's driver and they don't have the
      corresponding device_nodes. Instead, SRIOV VFs have dynamically
      created pci_dn, which can be used for EEH probe.
      
      The patch reworks EEH probe for PowerNV and pSeries platforms to
      do probing based on pci_dn, instead of pci_dev or device_node any
      more.
      Signed-off-by: NGavin Shan <gwshan@linux.vnet.ibm.com>
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      ff57b454
  4. 28 5月, 2014 1 次提交
  5. 24 7月, 2013 3 次提交
    • G
      powerpc/pci: Partial tree hotplug support · ab444ec9
      Gavin Shan 提交于
      When EEH error happens to one specific PE, the device drivers
      of its attached EEH devices (PCI devices) are checked to see
      the further action: reset with complete hotplug, or reset without
      hotplug. However, that's not enough for those PCI devices whose
      drivers can't support EEH, or those PCI devices without driver.
      So we need do so-called "partial hotplug" on basis of PCI devices.
      In the situation, part of PCI devices of the specific PE are
      unplugged and plugged again after PE reset.
      
      The patch changes pcibios_add_pci_devices() so that it can support
      full hotplug and so-called "partial" hotplug based on device-tree
      or real hardware. It's notable that pci_of_scan.c has been changed
      for a bit in order to support the "partial" hotplug based on dev-tree.
      
      Most of the generic code already supports that, we just need to
      plumb it properly on our side.
      Signed-off-by: NGavin Shan <shangw@linux.vnet.ibm.com>
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      ab444ec9
    • G
      powerpc/eeh: Keep PE during hotplug · 807a827d
      Gavin Shan 提交于
      When we do normal hotplug, the PE (shadow EEH structure) shouldn't be
      kept around.
      
      However, we need to keep it if the hotplug an artifial one caused by
      EEH errors recovery.
      
      Since we remove EEH device through the PCI hook pcibios_release_device(),
      the flag "purge_pe" passed to various functions is meaningless. So the patch
      removes the meaningless flag and introduce new flag "EEH_PE_KEEP"
      to save the PE while doing hotplug during EEH error recovery.
      Signed-off-by: NGavin Shan <shangw@linux.vnet.ibm.com>
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      807a827d
    • G
      powerpc/pci: Override pcibios_release_device() · 008a4938
      Gavin Shan 提交于
      The patch overrides pcibios_release_device() to release EEH
      resources (EEH cache, unbinding EEH device) for the indicated PCI
      device.
      Signed-off-by: NGavin Shan <shangw@linux.vnet.ibm.com>
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      008a4938
  6. 20 6月, 2013 1 次提交