cvs commit: src/sys/amd64/include pci_cfgreg.h src/sys/amd64/pci pci_cfgreg.c src/sys/i386/pci pci_cfgreg.c

John Baldwin jhb at
Wed Nov 28 14:20:09 PST 2007

jhb         2007-11-28 22:20:08 UTC

  FreeBSD src repository

  Modified files:
    sys/amd64/include    pci_cfgreg.h 
    sys/amd64/pci        pci_cfgreg.c 
    sys/i386/pci         pci_cfgreg.c 
  Adjust the code to probe for the PCI config mechanism to use.
  - On amd64, just assume type #1 is always used.  PCI 2.0 mandated
    deprecated type #2 and required type #1 for all future bridges which
    was well before amd64 existed.
  - For i386, ignore whatever value was in 0xcf8 before testing for type #1
    and instead rely on the other tests to determine if type #1 works.  Some
    newer machines leave garbage in 0xcf8 during boot and as a result the
    kernel doesn't find PCI at all (which greatly confuses ACPI which expects
    PCI to exist when PCI busses are in the namespace).
  MFC after:      3 days
  Discussed with: scottl
  Revision  Changes    Path
  1.14      +0 -5      src/sys/amd64/include/pci_cfgreg.h
  1.110     +11 -167   src/sys/amd64/pci/pci_cfgreg.c
  1.125     +25 -25    src/sys/i386/pci/pci_cfgreg.c

More information about the cvs-src mailing list