On Fri, 2005-03-18 at 20:56 -0700, Matthew Wilcox wrote:
> ncr53c8xx update
There's actually a slight problem with this one: on my Q720 it produces
messages like this:
ncr53c720-1: ID 7, Fast-10, Parity Checking
scsi1 : ncr53c8xx-3.4.3g
target1:0:1: target did not report SYNC.
Vendor: TOSHIBA Model: CD-ROM XM-5401TA Rev: 3605
Type: CD-ROM ANSI SCSI revision: 02
target1:0:1: Beginning Domain Validation
target1:0:1: asynchronous.
target1:0:1: Domain Validation skipping write tests
target1:0:1: FAST-5 SCSI 4.2 MB/s ST (236 ns, offset 8)
target1:0:1: Ending Domain Validation
Although everything is fine. The initial "target did not report SYNC"
is because the driver is trying to negotiate over the initial inquiry
(so, naturally we don't know if it supports sync yet). The solution is
to rip out the last remnants of the spontaneous attempts at negotiation
to force it to wait for the DV negotiation in slave_configure.
James
===== drivers/scsi/ncr53c8xx.c 1.53 vs edited =====
--- 1.53/drivers/scsi/ncr53c8xx.c 2005-03-18 21:36:11 -06:00
+++ edited/drivers/scsi/ncr53c8xx.c 2005-03-19 17:57:28 -06:00
@@ -3278,6 +3278,7 @@
tp->usrsync = driver_setup.default_sync;
tp->usrwide = driver_setup.max_wide;
tp->usrtags = MAX_TAGS;
+ tp->period = 0xffff;
if (!driver_setup.disconnection)
np->target[i].usrflag = UF_NODISC;
}
@@ -4650,7 +4651,6 @@
if (tp->usrwide > np->maxwide)
tp->usrwide = np->maxwide;
- ncr_negotiate (np, tp);
}
/*
@@ -6900,15 +6900,10 @@
unsigned char tn = sdev->id, ln = sdev->lun;
struct tcb *tp = &np->target[tn];
struct lcb *lp = tp->lp[ln];
- struct scsi_target *starget = sdev->sdev_target;
/* If no lcb, try to allocate it. */
if (!lp && !(lp = ncr_alloc_lcb(np, tn, ln)))
goto fail;
-
- /* Prepare negotiation */
- if (spi_support_wide(starget) || spi_support_sync(starget))
- ncr_negotiate(np, tp);
/*
** If unit supports tagged commands, allocate the
-
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html