[PATCH 0/5] powerpc/pci/hotplug: Discover surprise-hotplugged PCIe devices during rescan

Sergey Miroshnichenko s.miroshnichenko at yadro.com
Thu Sep 6 01:40:03 AEST 2018


This patchset allows hotplugged PCIe devices to be enumerated during a bus
rescan being issued via sysfs, when the "Presence Detect Changed" interrupt
is not available.

As a first part of our work on adding support for hotplugging PCIe bridges
full of devices without special requirement such as Hot-Plug Controller,
reservation of bus numbers and memory regions by firmware, etc., this serie
is intended to solve the first two problems from the list below:

 I   PowerNV doesn't discover new hotplugged PCIe devices
 II  EEH is falsely triggered when poking empty slots during PCIe rescan on PowerNV
 III The PCI subsystem is not prepared to runtime changes of BAR addresses
 IV  Device drivers don't track changes of their BAR addresses
 V   Move BARs of working devices to make space for new ones
 VI  Add support for PCIe bridge hotplug

Sergey Miroshnichenko (5):
  powerpc/pci: Access PCI config space directly w/o pci_dn
  powerpc/pci: Create pci_dn on demand
  powerpc/pci: Use DT to create pci_dn for root bridges only
  powerpc/powernv/pci: Enable reassigning the bus numbers
  PCI/powerpc/eeh: Add pcibios hooks for preparing to rescan

 arch/powerpc/include/asm/eeh.h               |  2 +
 arch/powerpc/kernel/eeh.c                    | 14 +++
 arch/powerpc/kernel/pci_dn.c                 | 75 ++++++++++++-----
 arch/powerpc/kernel/rtas_pci.c               | 89 ++++++++++++--------
 arch/powerpc/platforms/powernv/eeh-powernv.c | 20 +++++
 arch/powerpc/platforms/powernv/pci.c         | 55 +++++++-----
 drivers/pci/probe.c                          | 14 +++
 include/linux/pci.h                          |  2 +
 8 files changed, 197 insertions(+), 74 deletions(-)

-- 
2.17.1



More information about the Linuxppc-dev mailing list