powerpc/eeh: Remove PHB check in probe
authorOliver O'Halloran <oohall@gmail.com>
Fri, 6 Mar 2020 07:39:02 +0000 (18:39 +1100)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 25 Mar 2020 01:09:39 +0000 (12:09 +1100)
This check for a missing PHB has existing in various forms since the
initial PPC64 port was upstreamed in 2002. The idea seems to be that we
need to guard against creating pci-specific data structures for the non-pci
children of a PCI device tree node (e.g. USB devices). However, we only
create pci_dn structures for DT nodes that correspond to PCI devices so
there's not much point in doing this check in the eeh_probe path.

Reviewed-by: Sam Bobroff <sbobroff@linux.ibm.com>
Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20200306073904.4737-4-oohall@gmail.com
arch/powerpc/kernel/eeh.c

index 9cb3370..a9e4ca7 100644 (file)
@@ -1120,7 +1120,6 @@ core_initcall_sync(eeh_init);
  */
 void eeh_add_device_early(struct pci_dn *pdn)
 {
-       struct pci_controller *phb = pdn ? pdn->phb : NULL;
        struct eeh_dev *edev = pdn_to_eeh_dev(pdn);
 
        if (!edev)
@@ -1129,11 +1128,6 @@ void eeh_add_device_early(struct pci_dn *pdn)
        if (!eeh_has_flag(EEH_PROBE_MODE_DEVTREE))
                return;
 
-       /* USB Bus children of PCI devices will not have BUID's */
-       if (NULL == phb ||
-           (eeh_has_flag(EEH_PROBE_MODE_DEVTREE) && 0 == phb->buid))
-               return;
-
        eeh_ops->probe(pdn, NULL);
 }