summaryrefslogtreecommitdiffstats
path: root/sys/i386/isa/pcibus.c
diff options
context:
space:
mode:
authorse <se@FreeBSD.org>1995-10-17 15:23:14 +0000
committerse <se@FreeBSD.org>1995-10-17 15:23:14 +0000
commit9b1dda8fb9f17826e1dccf7bed8262d025023d72 (patch)
treecdeb7a0baaf0f0dbd237b5af65804888ea848004 /sys/i386/isa/pcibus.c
parent960af83a64d3d88f33267747256ddc50f632c8b4 (diff)
downloadFreeBSD-src-9b1dda8fb9f17826e1dccf7bed8262d025023d72.zip
FreeBSD-src-9b1dda8fb9f17826e1dccf7bed8262d025023d72.tar.gz
At least the ASUS Triton motherboards don't disable the PCI bus configuration
accesses after the BIOS bus scan. The previous revision made the assumption, that every PCI motherboard did ... Change the test on the initial value of the CONF1_ADDR_PORT register in a way that makes the probe succeed on triton based motherboards, without breaking the EISA motherboard that has some non-PCI register at the same address.
Diffstat (limited to 'sys/i386/isa/pcibus.c')
-rw-r--r--sys/i386/isa/pcibus.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/sys/i386/isa/pcibus.c b/sys/i386/isa/pcibus.c
index 7b93bd0..4e6ad36 100644
--- a/sys/i386/isa/pcibus.c
+++ b/sys/i386/isa/pcibus.c
@@ -1,6 +1,6 @@
/**************************************************************************
**
-** $Id: pcibus.c,v 1.16 1995/10/09 21:56:24 se Exp $
+** $Id: pcibus.c,v 1.17 1995/10/15 23:43:08 se Exp $
**
** pci bus subroutines for i386 architecture.
**
@@ -146,7 +146,8 @@ DATA_SET (pcibus_set, i386pci);
#define CONF1_ENABLE 0x80000000ul
#define CONF1_ENABLE_CHK 0x80000000ul
-#define CONF1_ENABLE_CHK1 0xFF000001ul
+#define CONF1_ENABLE_MSK 0x00ff07fful
+#define CONF1_ENABLE_CHK1 0xff000001ul
#define CONF1_ENABLE_MSK1 0x80000001ul
#define CONF1_ENABLE_RES1 0x80000000ul
@@ -187,7 +188,7 @@ pcibus_setup (void)
oldval1 = inl (CONF1_ADDR_PORT);
if (bootverbose) {
- printf ("pcibus_setup(1):\tmode1 addr port (0x0cf8) is 0x%08lx\n", oldval1);
+ printf ("pcibus_setup(1):\tmode 1 addr port (0x0cf8) is 0x%08lx\n", oldval1);
}
/*---------------------------------------
@@ -195,7 +196,7 @@ pcibus_setup (void)
**---------------------------------------
*/
- if ((oldval1 & CONF1_ENABLE) == 0) {
+ if ((oldval1 & CONF1_ENABLE_MSK) == 0) {
pci_mechanism = 1;
pci_maxdevice = 32;
OpenPOWER on IntegriCloud