The series is split from "[PATCH v8 00/45] powerpc/powernv: PCI hotplug support". The series does couple of things as below. The patches are required to support PCI hotplug on PowerNV platforms. However, the patches refactor the code with the goal: not affecting current logic.
* Code cleanup and refactoring. * Track IO/M32/M64 segments consumed by one particular PE. * Remove DMA32 list and improve DMA32 segment tracking. * M64 support for IODA1 so that we have unified basis for the subsequent patches to support PCI hotplug. * Couple of fixes to PCI hotplug (used by EEH). * Exported functions to be used by PCI hotplug. Gavin Shan (26): powerpc/pci: Cleanup on struct pci_controller_ops powerpc/powernv: Cleanup on pci_controller_ops instances powerpc/powernv: Drop phb->bdfn_to_pe() powerpc/powernv: Reorder fields in struct pnv_phb powerpc/powernv: Rename PE# fields in struct pnv_phb powerpc/powernv: Data type unsigned int for PE number powerpc/powernv: Fix initial IO and M32 segmap powerpc/powernv: Simplify pnv_ioda_setup_pe_seg() powerpc/powernv: IO and M32 mapping based on PCI device resources powerpc/powernv: Track M64 segment consumption powerpc/powernv: Rename M64 related functions powerpc/powernv/ioda1: M64 support on P7IOC powerpc/powernv/ioda1: Rename pnv_pci_ioda_setup_dma_pe() powerpc/powernv/ioda1: Introduce PNV_IODA1_DMA32_SEGSIZE powerpc/powernv: Remove DMA32 PE list powerpc/powernv/ioda1: Improve DMA32 segment track powerpc/powernv: Use PE instead of number during setup and release powerpc/pci: Rename pcibios_{add,remove}_pci_devices() powerpc/pci: Rename pcibios_find_pci_bus() powerpc/pci: Move pci_find_bus_by_node() around powerpc/pci: Export pci_add_device_node_info() powerpc/pci: Introduce pci_remove_device_node_info() powerpc/pci: Export pci_traverse_device_nodes() powerpc/pci: Don't scan empty slot powerpc/powernv: Simplify pnv_eeh_reset() powerpc/powernv: Exclude root bus in pnv_pci_reset_secondary_bus() arch/powerpc/include/asm/pci-bridge.h | 41 +- arch/powerpc/include/asm/ppc-pci.h | 6 +- arch/powerpc/kernel/eeh_driver.c | 12 +- arch/powerpc/kernel/pci-hotplug.c | 47 +- arch/powerpc/kernel/pci_dn.c | 66 ++- arch/powerpc/platforms/powernv/eeh-powernv.c | 81 ++- arch/powerpc/platforms/powernv/pci-ioda.c | 719 +++++++++++++++------------ arch/powerpc/platforms/powernv/pci.c | 4 +- arch/powerpc/platforms/powernv/pci.h | 41 +- arch/powerpc/platforms/pseries/msi.c | 4 +- arch/powerpc/platforms/pseries/pci_dlpar.c | 32 -- arch/powerpc/platforms/pseries/setup.c | 2 +- drivers/pci/hotplug/rpadlpar_core.c | 8 +- drivers/pci/hotplug/rpaphp_core.c | 4 +- drivers/pci/hotplug/rpaphp_pci.c | 4 +- 15 files changed, 592 insertions(+), 479 deletions(-) -- 2.1.0 _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev