diff options
| author | ad <ad@NetBSD.org> | 2001-01-01 19:03:30 +0000 |
|---|---|---|
| committer | ad <ad@NetBSD.org> | 2001-01-01 19:03:30 +0000 |
| commit | c29358e0f970a7743e4ec72e1ac3d13f5ccb490b (patch) | |
| tree | 643911f74c1ee7612005b20e9f6e8f418bcccf8c /sys/dev | |
| parent | d3562d8247b96e865ef7a76f0cb1432f6ea739f7 (diff) | |
Don't try to configure `uninteresting' devices.
Diffstat (limited to 'sys/dev')
| -rw-r--r-- | sys/dev/i2o/iop.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/sys/dev/i2o/iop.c b/sys/dev/i2o/iop.c index 632f16b381f..ce6fec8fdf7 100644 --- a/sys/dev/i2o/iop.c +++ b/sys/dev/i2o/iop.c @@ -1,4 +1,4 @@ -/* $NetBSD: iop.c,v 1.7 2000/12/03 15:51:36 ad Exp $ */ +/* $NetBSD: iop.c,v 1.8 2001/01/01 19:03:30 ad Exp $ */ /*- * Copyright (c) 2000 The NetBSD Foundation, Inc. @@ -625,7 +625,7 @@ iop_configure_devices(struct iop_softc *sc) struct iop_attach_args ia; struct iop_initiator *ii; const struct i2o_lct_entry *le; - int i, nent; + int i, j, nent; nent = sc->sc_nlctent; for (i = 0, le = sc->sc_lct->entry; i < nent; i++, le++) { @@ -638,6 +638,14 @@ iop_configure_devices(struct iop_softc *sc) ia.ia_class = le16toh(le->classid) & 4095; ia.ia_tid = le32toh(le->localtid) & 4095; + /* Ignore uninteresting devices. */ + for (j = 0; j < sizeof(iop_class) / sizeof(iop_class[0]); j++) + if (iop_class[j].ic_class == ia.ia_class) + break; + if (j < sizeof(iop_class) / sizeof(iop_class[0]) && + (iop_class[j].ic_flags & IC_CONFIGURE) == 0) + continue; + /* * Try to configure the device only if it's not already * configured. |
