• Nathan Lynch's avatar
    [POWERPC] Remove gratuitous reads from maple PCI config space methods · 1bdb2867
    Nathan Lynch authored
    The maple PCI configuration space write methods read the written
    location immediately after the write is performed, presumably in order
    to flush the write.  However, configuration space writes are not
    allowed to be posted, making these reads gratuitous.  Furthermore,
    this behavior potentially causes us to violate the PCI PM spec when
    changing between e.g. D0 and D3 states, because a delay of up to 10ms
    may be required before the OS accesses configuration space after the
    write which initiates the transition.  It definitely causes a system
    hang for me with a Broadcom 5721 PCIE network adapter, which is fixed
    by this change.
    
    Therefore this removes the gratuitous reads from u3_agp_write_config,
    u3_ht_write_config, and u4_pcie_write_config.
    Signed-off-by: default avatarNathan Lynch <ntl@pobox.com>
    Acked-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
    Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
    1bdb2867
pci.c 16.3 KB