Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/netbsd-1-5]: src/sys/arch/arm32/podulebus Pullup 1.19 [abs]:
details: https://anonhg.NetBSD.org/src/rev/37a651632c18
branches: netbsd-1-5
changeset: 490115:37a651632c18
user: tv <tv%NetBSD.org@localhost>
date: Fri Nov 03 18:42:09 2000 +0000
description:
Pullup 1.19 [abs]:
Fix hanging problem with acorn scsi card on RiscPC and A7000 machines
PR port-arm32/10539 from Mike Pumford
diffstat:
sys/arch/arm32/podulebus/sbic.c | 9 ++++-----
1 files changed, 4 insertions(+), 5 deletions(-)
diffs (32 lines):
diff -r 6d68dd40b454 -r 37a651632c18 sys/arch/arm32/podulebus/sbic.c
--- a/sys/arch/arm32/podulebus/sbic.c Fri Nov 03 18:41:04 2000 +0000
+++ b/sys/arch/arm32/podulebus/sbic.c Fri Nov 03 18:42:09 2000 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: sbic.c,v 1.15 2000/03/23 06:35:15 thorpej Exp $ */
+/* $NetBSD: sbic.c,v 1.15.4.1 2000/11/03 18:42:09 tv Exp $ */
/*
* Copyright (c) 1994 Christian E. Hopps
@@ -533,11 +533,10 @@
dev->target = slp->scsipi_scsi.target;
dev->lun = slp->scsipi_scsi.lun;
if ( flags & XS_CTL_POLL || ( !sbic_parallel_operations
- && (/*phase == STATUS_PHASE ||*/
- sbicdmaok(dev, xs) == 0) ) )
+ && (sbicdmaok(dev, xs) == 0) ) )
stat = sbicicmd(dev, slp->scsipi_scsi.target, slp->scsipi_scsi.lun, &acb->cmd,
acb->clen, acb->sc_kv.dc_addr, acb->sc_kv.dc_count);
- else if (sbicgo(dev, xs) == 0) {
+ else if (sbicgo(dev, xs) == 0 && xs->error != XS_SELTIMEOUT) {
SBIC_TRACE(dev);
return;
} else
@@ -722,7 +721,7 @@
struct sbic_softc *dev;
struct scsipi_xfer *xs;
{
- if (sbic_no_dma || xs->datalen & 0x1 || (u_int)xs->data & 0x3)
+ if (sbic_no_dma || !xs->datalen || xs->datalen & 0x1 || (u_int)xs->data & 0x3)
return(0);
/*
* controller supports dma to any addresses?
Home |
Main Index |
Thread Index |
Old Index