PERFORCE change 110895 for review
Matt Jacob
mjacob at FreeBSD.org
Sat Dec 2 16:32:44 PST 2006
http://perforce.freebsd.org/chv.cgi?CH=110895
Change 110895 by mjacob at newisp on 2006/12/03 00:31:58
Sync changes with CVS.
Affected files ...
.. //depot/projects/newisp/dev/mpt/mpt.h#6 edit
.. //depot/projects/newisp/dev/mpt/mpt_cam.c#15 edit
Differences ...
==== //depot/projects/newisp/dev/mpt/mpt.h#6 (text+ko) ====
@@ -1193,7 +1193,6 @@
PageAddress, hdr, len, sleep_ok,
timeout_ms));
}
-
/* mpt_debug.c functions */
void mpt_print_reply(void *vmsg);
void mpt_print_db(uint32_t mb);
==== //depot/projects/newisp/dev/mpt/mpt_cam.c#15 (text+ko) ====
@@ -1879,12 +1879,14 @@
* Do a *short* print here if we're set to MPT_PRT_DEBUG
*/
if (mpt->verbose == MPT_PRT_DEBUG) {
+ U32 df;
mpt_prt(mpt, "mpt_start: %s op 0x%x ",
(mpt_req->Function == MPI_FUNCTION_SCSI_IO_REQUEST)?
"SCSI_IO_REQUEST" : "SCSI_IO_PASSTHRU", mpt_req->CDB[0]);
- if (mpt_req->Control != MPI_SCSIIO_CONTROL_NODATATRANSFER) {
+ df = mpt_req->Control & MPI_SCSIIO_CONTROL_DATADIRECTION_MASK;
+ if (df != MPI_SCSIIO_CONTROL_NODATATRANSFER) {
mpt_prtc(mpt, "(%s %u byte%s ",
- (mpt_req->Control == MPI_SCSIIO_CONTROL_READ)?
+ (df == MPI_SCSIIO_CONTROL_READ)?
"read" : "write", csio->dxfer_len,
(csio->dxfer_len == 1)? ")" : "s)");
}
@@ -2862,7 +2864,8 @@
tgt = ccb->ccb_h.target_id;
lun = ccb->ccb_h.target_lun;
- if (raid_passthru && ccb->ccb_h.func_code != XPT_PATH_INQ &&
+ if (raid_passthru &&
+ ccb->ccb_h.func_code != XPT_PATH_INQ &&
ccb->ccb_h.func_code != XPT_RESET_BUS &&
ccb->ccb_h.func_code != XPT_RESET_DEV) {
CAMLOCK_2_MPTLOCK(mpt);
@@ -2908,11 +2911,9 @@
break;
}
case XPT_RESET_DEV:
-
xpt_print_path(ccb->ccb_h.path);
printf("reset %s\n", ccb->ccb_h.func_code == XPT_RESET_BUS?
"bus" : "device");
-
CAMLOCK_2_MPTLOCK(mpt);
(void) mpt_bus_reset(mpt, tgt, lun, FALSE);
MPTLOCK_2_CAMLOCK(mpt);
@@ -3330,19 +3331,28 @@
return (rv);
}
MPTLOCK_2_CAMLOCK(mpt);
+ mpt_lprt(mpt, MPT_PRT_DEBUG,
+ "mpt_get_spi_settings[%d]: current NP %x Info %x\n", tgt,
+ tmp.NegotiatedParameters, tmp.Information);
dval |= (tmp.NegotiatedParameters & MPI_SCSIDEVPAGE0_NP_WIDE) ?
DP_WIDE : DP_NARROW;
dval |= (mpt->mpt_disc_enable & (1 << tgt)) ?
DP_DISC_ENABLE : DP_DISC_DISABL;
dval |= (mpt->mpt_tag_enable & (1 << tgt)) ?
DP_TQING_ENABLE : DP_TQING_DISABL;
- oval = (tmp.NegotiatedParameters >> 16) & 0xff;
- pval = (tmp.NegotiatedParameters >> 8) & 0xff;
+ oval = tmp.NegotiatedParameters;
+ oval &= MPI_SCSIDEVPAGE0_NP_NEG_SYNC_OFFSET_MASK;
+ oval >>= MPI_SCSIDEVPAGE0_NP_SHIFT_SYNC_OFFSET;
+ pval = tmp.NegotiatedParameters;
+ pval &= MPI_SCSIDEVPAGE0_NP_NEG_SYNC_PERIOD_MASK;
+ pval >>= MPI_SCSIDEVPAGE0_NP_SHIFT_SYNC_PERIOD;
mpt->mpt_dev_page0[tgt] = tmp;
} else {
dval = DP_WIDE|DP_DISC_ENABLE|DP_TQING_ENABLE;
- oval = (mpt->mpt_port_page0.Capabilities >> 16) & 0xff;
- pval = (mpt->mpt_port_page0.Capabilities >> 8) & 0xff;
+ oval = mpt->mpt_port_page0.Capabilities;
+ oval = MPI_SCSIPORTPAGE0_CAP_GET_MAX_SYNC_OFFSET(oval);
+ pval = mpt->mpt_port_page0.Capabilities;
+ pval = MPI_SCSIPORTPAGE0_CAP_GET_MIN_SYNC_PERIOD(pval);
}
spi->valid = 0;
@@ -3376,9 +3386,10 @@
scsi->valid = 0;
}
mpt_lprt(mpt, MPT_PRT_NEGOTIATION,
- "mpt_get_spi_settings[%d]:%s per=%x off=%d spv=%x scv=%x\n",
+ "mpt_get_spi_settings[%d]:%s per=%x off=%d SPF=%x SPV=%x SCF=%x SCV"
+ "=%x bw=%x\n",
tgt, IS_CURRENT_SETTINGS(cts)? "ACTIVE" : "NVRAM ", pval, oval,
- spi->valid, scsi->valid);
+ spi->flags, spi->valid, scsi->flags, scsi->valid, spi->bus_width);
return (0);
}
More information about the p4-projects
mailing list