Date: Wed, 31 Dec 2003 08:56:32 -0800 (PST) From: John Baldwin <jhb@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/i386/pci pci_cfgreg.c Message-ID: <200312311656.hBVGuWxN040721@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
jhb 2003/12/31 08:56:32 PST FreeBSD src repository Modified files: sys/i386/pci pci_cfgreg.c Log: Replace an outb() during the test for configuration mechanism #1 with a DELAY(1) instead. After wading through old commit logs, I found that the outb() was added not as part of the test but as an intentional delay. In fact, according to Shanley's PCI book, the configuration 1 data and address ports should only be accessed using aligned 32-bit accesses (i.e. inl() and outl()). Thus, using outb() to just the last byte of the port violates the PCI spec it would seem. On at least one box doing so broke the probe for PCI, whereas changing it to a DELAY(1) fixed the probe. Reported by: Sean Welch <welchsm@earthlink.net> MFC after: 1 week Revision Changes Path 1.108 +1 -1 src/sys/i386/pci/pci_cfgreg.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200312311656.hBVGuWxN040721>