• Linus Torvalds's avatar
    [PCI] Do not enable CRS Software Visibility by default · ad7edfe0
    Linus Torvalds authored
    It appears that some PCI-E bridges do the wrong thing in the presense of
    CRS Software Visibility and MMCONFIG.  In particular, it looks like an
    ATI bridge (device ID 7936) will return 0001 in the vendor ID field of
    any bridged devices indefinitely.
    
    Not enabling CRS SV avoids the problem, and as we currently do not
    really make good use of the feature anyway (we just time out rather than
    do any threaded discovery as suggested by the CRS specs), we're better
    off just not enabling it.
    
    This should fix a slew of problem reports with random devices (generally
    graphics adapters or fairly high-performance networking cards, since it
    only affected PCI-E) not getting properly recognized on these AMD systems.
    
    If we really want to use CRS-SV, we may end up eventually needing a
    whitelist of systems where this should be enabled, along with some kind
    of "pcibios_enable_crs()" query to call the system-specific code.
    Suggested-by: default avatarLoic Prylli <loic@myri.com>
    Tested-by: default avatarKai Ruhnau <kai@tragetaschen.dyndns.org>
    Cc: Matthew Wilcox <matthew@wil.cx>
    Cc: Greg Kroah-Hartman <greg@kroah.com>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    ad7edfe0
probe.c 33.1 KB