From c78ea1d741d77a23a623682662f957cc4e152643 Mon Sep 17 00:00:00 2001 From: scottl Date: Sat, 10 Aug 2002 19:55:00 +0000 Subject: Fix GET_TRAN_SETTINGS to be more correct. Don't allow SCSI resets on the 5400S card, it seems to cause problems with certain backplanes. Submitted by: lnb@freebsdsystems.com MFC after: 3 days --- sys/dev/aac/aac_cam.c | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) (limited to 'sys/dev/aac/aac_cam.c') diff --git a/sys/dev/aac/aac_cam.c b/sys/dev/aac/aac_cam.c index d8c5727..44f7db4 100644 --- a/sys/dev/aac/aac_cam.c +++ b/sys/dev/aac/aac_cam.c @@ -572,20 +572,19 @@ aac_cam_get_tran_settings(struct aac_softc *sc, struct ccb_trans_settings *cts, } cts->bus_width = ((vmi_resp->Inquiry7 & 0x60) >> 5); + cts->valid = CCB_TRANS_BUS_WIDTH_VALID; + if (vmi_resp->ScsiRate) { cts->sync_period = scsi_calc_syncparam((10000 / vmi_resp->ScsiRate)); cts->sync_offset = vmi_resp->ScsiOffset; - } else { - cts->sync_period = 0; - cts->sync_offset = 0; + cts->valid |= CCB_TRANS_SYNC_RATE_VALID | + CCB_TRANS_SYNC_OFFSET_VALID; } + cts->flags &= ~(CCB_TRANS_DISC_ENB | CCB_TRANS_TAG_ENB); - cts->valid = CCB_TRANS_DISC_VALID | - CCB_TRANS_SYNC_RATE_VALID | - CCB_TRANS_SYNC_OFFSET_VALID | - CCB_TRANS_BUS_WIDTH_VALID | - CCB_TRANS_TQ_VALID; + cts->valid |= CCB_TRANS_DISC_VALID | + CCB_TRANS_TQ_VALID; aac_release_sync_fib(sc); return (CAM_REQ_CMP); -- cgit v1.1