summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/dev/ic/siop.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/sys/dev/ic/siop.c b/sys/dev/ic/siop.c
index b46a9a89169..333f0d8f547 100644
--- a/sys/dev/ic/siop.c
+++ b/sys/dev/ic/siop.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: siop.c,v 1.8 2001/06/24 18:28:10 krw Exp $ */
+/* $OpenBSD: siop.c,v 1.9 2001/06/24 22:00:01 krw Exp $ */
/* $NetBSD: siop.c,v 1.39 2001/02/11 18:04:49 bouyer Exp $ */
/*
@@ -1368,6 +1368,7 @@ siop_scsicmd(xs)
&& (xs->sc_link->lun == 0)
&& (xs->error == XS_NOERROR)) {
inqdata = (struct scsi_inquiry_data *)xs->data;
+
if (inqdata->flags & SID_CmdQue) {
sc->targets[target]->flags |= TARF_TAG;
xs->sc_link->openings += SIOP_NTAG - SIOP_OPENINGS;
@@ -1383,15 +1384,12 @@ siop_scsicmd(xs)
&& (inqdata->flags2 & (SID_CLOCKING | SID_QAS | SID_IUS)))
sc->targets[target]->flags |= TARF_PPR;
+ sc->targets[target]->status = TARST_ASYNC;
+
if (sc->targets[target]->flags
& (TARF_WIDE | TARF_SYNC | TARF_PPR)) {
- sc->targets[target]->status = TARST_ASYNC;
siop_add_dev(sc, target, lun);
}
- else {
- sc->targets[target]->status = TARST_OK;
- siop_print_info(xs->sc_link);
- }
}
break;
}