Index: pci.c =================================================================== RCS file: /home/ncvs/src/sys/dev/pci/pci.c,v retrieving revision 1.214 diff -u -r1.214 pci.c --- pci.c 2003/04/16 03:15:08 1.214 +++ pci.c 2003/06/09 23:35:56 @@ -825,7 +825,15 @@ ("dinfo_size too small")); maxslots = PCIB_MAXSLOTS(pcib); for (s = 0; s <= maxslots; s++) { +#ifdef __sparc64__ + /* + * XXX - some sparc hardware has valid hardware when the + * function 0 doesn't probe. Scan all functions. + */ + pcifunchigh = PCI_FUNCMAX; +#else pcifunchigh = 0; +#endif for (f = 0; f <= pcifunchigh; f++) { dinfo = pci_read_device(pcib, busno, s, f, dinfo_size); if (dinfo != NULL) {