diff options
author | eivind <eivind@FreeBSD.org> | 1998-01-31 03:29:00 +0000 |
---|---|---|
committer | eivind <eivind@FreeBSD.org> | 1998-01-31 03:29:00 +0000 |
commit | e6eb2c07dc96defc2468dd8f72057449207ac25c (patch) | |
tree | b247809fba3cb7504112973b4694c134987c09d3 /sys/i386/isa/isa.c | |
parent | 6a06ff15fefad664ce3439ce083c364e4f5f97e3 (diff) | |
download | FreeBSD-src-e6eb2c07dc96defc2468dd8f72057449207ac25c.zip FreeBSD-src-e6eb2c07dc96defc2468dd8f72057449207ac25c.tar.gz |
Skip probing devices which have already probed true.
Diffstat (limited to 'sys/i386/isa/isa.c')
-rw-r--r-- | sys/i386/isa/isa.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/sys/i386/isa/isa.c b/sys/i386/isa/isa.c index 0d5049b..3f9440d 100644 --- a/sys/i386/isa/isa.c +++ b/sys/i386/isa/isa.c @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * from: @(#)isa.c 7.2 (Berkeley) 5/13/91 - * $Id: isa.c,v 1.107 1997/11/21 18:13:58 bde Exp $ + * $Id: isa.c,v 1.108 1997/11/30 09:44:28 jmg Exp $ */ /* @@ -137,6 +137,18 @@ haveseen(dvp, tmpdvp, checkbits) if (tmpdvp->id_alive) { char const *whatnot; + /* + * Check for device driver & unit conflict; just drop probing + * a device which has already probed true. This is usually + * not strictly a conflict, but rather the case of somebody + * having specified several mutually exclusive configurations + * for a single device. + */ + if (tmpdvp->id_driver == dvp->id_driver && + tmpdvp->id_unit == dvp->id_unit) { + return 1; + } + whatnot = checkbits & CC_ATTACH ? "attach" : "prob"; /* * Check for I/O address conflict. We can only check the |