Subject: Re: [PATCH 0/7] powerpc/eeh: Refactor to use pci_dn

From: Gavin Shan <[email-masked]>
Date: Tue, 17 Mar 2015 16:14:31 +1100

On Tue, Mar 17, 2015 at 12:37:17PM +1100, Gavin Shan wrote:

Please ignore this and v2 with more changes according to Ben's comments
is on the way.

Thanks,
Gavin

>Currently, EEH depends on device_node or pci_dev heavily. Unfortunately,
>SRIOV VFs are supported depending on pci_dn heavily, which is conflicting
>with EEH implementation. In order for better support EEH on SRIOV VF, the
>EEH is better to be changed a bit to depend on pci_dn, which is exactly
>what the patchset does.
>
>The patchset is expected to merged after the patchset "EEH cleanup to
>remove chip layer for PowerNV", before "SRIOV patchset". The first two
>patches are extracted from SRIOV patchset to make this patchset
>self-contained.
>
>Gavin Shan (7):
>  powerpc/pci: Refactor pci_dn
>  powerpc/powernv: Use pci_dn, not device_node, in PCI config accessor
>  powerpc/pci: Trace more information from pci_dn
>  powerpc/eeh: Create eeh_dev from pci_dn instead of device_node
>  powerpc/eeh: Do probe on pci_dn
>  powerpc/eeh: Replace device_node with pci_dn in eeh_ops
>  powerpc/eeh: Remove device_node dependency
>
> arch/powerpc/include/asm/device.h            |   3 +
> arch/powerpc/include/asm/eeh.h               |  28 ++-
> arch/powerpc/include/asm/pci-bridge.h        |  31 +--
> arch/powerpc/include/asm/ppc-pci.h           |   3 +
> arch/powerpc/kernel/eeh.c                    | 127 +++++-------
> arch/powerpc/kernel/eeh_cache.c              |  25 +--
> arch/powerpc/kernel/eeh_dev.c                |  14 +-
> arch/powerpc/kernel/eeh_driver.c             |  22 --
> arch/powerpc/kernel/eeh_pe.c                 | 116 ++++++-----
> arch/powerpc/kernel/of_platform.c            |   2 +-
> arch/powerpc/kernel/pci-hotplug.c            |   2 +-
> arch/powerpc/kernel/pci_dn.c                 | 295 ++++++++++++++++++++++++++-
> arch/powerpc/kernel/pci_of_scan.c            |   2 +-
> arch/powerpc/kernel/rtas_pci.c               |   2 +-
> arch/powerpc/platforms/powernv/eeh-powernv.c | 192 ++++++++++++-----
> arch/powerpc/platforms/powernv/pci-ioda.c    |  16 ++
> arch/powerpc/platforms/powernv/pci.c         |  69 +++----
> arch/powerpc/platforms/powernv/pci.h         |   4 +-
> arch/powerpc/platforms/pseries/eeh_pseries.c |  98 ++++-----
> arch/powerpc/platforms/pseries/msi.c         |   6 +-
> arch/powerpc/platforms/pseries/pci_dlpar.c   |   2 +-
> arch/powerpc/platforms/pseries/setup.c       |   2 +-
> drivers/pci/hotplug/rpadlpar_core.c          |   2 +-
> 23 files changed, 694 insertions(+), 369 deletions(-)
>
>-- 
>1.8.3.2
>