• Oliver O'Halloran's avatar
    powerpc/powernv/pci: Drop pnv_phb->initialized · 24b4c6b1
    Oliver O'Halloran authored
    The pnv_phb->initialized flag is an odd beast. It was added back in 2012 in
    commit db1266c8 ("powerpc/powernv: Skip check on PE if necessary") to
    allow devices to be enabled even if the device had not yet been assigned to
    a PE. Allowing the device to be enabled before the PE is configured may
    cause spurious EEH events since none of the IOMMU context has been setup.
    
    I'm not entirely sure why this was ever necessary. My best guess is that it
    was an workaround for a bug or some other undesireable behaviour from the
    PCI core. Either way, it's unnecessary now since as of commit dc3d8f85
    ("powerpc/powernv/pci: Re-work bus PE configuration") we can guarantee that
    the PE will be configured before the PCI core will allow drivers to bind to
    the device.
    
    It's also worth pointing out that the ->initialized flag is only set in
    pnv_pci_ioda_create_dbgfs(). That function has its entire body wrapped
    in #ifdef CONFIG_DEBUG_FS. As a result, for kernels built without debugfs
    (i.e. petitboot) the other checks in pnv_pci_enable_device_hook() are
    bypassed entirely.
    Signed-off-by: default avatarOliver O'Halloran <oohall@gmail.com>
    Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
    Link: https://lore.kernel.org/r/20200902013657.1753830-1-oohall@gmail.com
    24b4c6b1
pci-ioda.c 86.2 KB