diff options
author | marcel <marcel@FreeBSD.org> | 2006-04-27 04:53:18 +0000 |
---|---|---|
committer | marcel <marcel@FreeBSD.org> | 2006-04-27 04:53:18 +0000 |
commit | 3f80cf7f437d30b42728ffd142b4bef840fa2881 (patch) | |
tree | a05893996312945000ca541017afdd0a02a4ebca /sys | |
parent | c2110a62a2fdffa6158d62f603418c8a17d58b9f (diff) | |
download | FreeBSD-src-3f80cf7f437d30b42728ffd142b4bef840fa2881.zip FreeBSD-src-3f80cf7f437d30b42728ffd142b4bef840fa2881.tar.gz |
The size of I/O ranges can be anything from 16 bytes to 2G bytes.
Lower the minimum for memory mapped I/O from 32 bytes to 16 bytes.
This fixes bus enumeration on ia64 now that the Diva auxiliary
serial port is attached to.
Diffstat (limited to 'sys')
-rw-r--r-- | sys/dev/pci/pci.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/dev/pci/pci.c b/sys/dev/pci/pci.c index 08fd995..c51db37 100644 --- a/sys/dev/pci/pci.c +++ b/sys/dev/pci/pci.c @@ -860,12 +860,12 @@ pci_add_map(device_t pcib, device_t bus, device_t dev, * isn't clear, we know we have a BAR that doesn't conform to the * spec, so ignore it. Also, sanity check the size of the data * areas to the type of memory involved. Memory must be at least - * 32 bytes in size, while I/O ranges must be at least 4. + * 16 bytes in size, while I/O ranges must be at least 4. */ if ((testval & 0x1) == 0x1 && (testval & 0x2) != 0) return (barlen); - if ((type == SYS_RES_MEMORY && ln2size < 5) || + if ((type == SYS_RES_MEMORY && ln2size < 4) || (type == SYS_RES_IOPORT && ln2size < 2)) return (barlen); |