summaryrefslogtreecommitdiffstats
path: root/sys/dev/ata/atapi-cam.c
diff options
context:
space:
mode:
authorthomas <thomas@FreeBSD.org>2003-09-21 08:53:05 +0000
committerthomas <thomas@FreeBSD.org>2003-09-21 08:53:05 +0000
commitb90934409616c74cc7a5d2050ce89958456f09f7 (patch)
treead5fcb90a5d3a19cf3abc48fb30b295c5099c1f8 /sys/dev/ata/atapi-cam.c
parent86f8314414ff94fd989dc4817bdd06d407117fd3 (diff)
downloadFreeBSD-src-b90934409616c74cc7a5d2050ce89958456f09f7.zip
FreeBSD-src-b90934409616c74cc7a5d2050ce89958456f09f7.tar.gz
(atapi_cb): Disable autosense for now as it causes a missed ATA interrupt.
Minor reformatting.
Diffstat (limited to 'sys/dev/ata/atapi-cam.c')
-rw-r--r--sys/dev/ata/atapi-cam.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/sys/dev/ata/atapi-cam.c b/sys/dev/ata/atapi-cam.c
index c503dcf..0473c16 100644
--- a/sys/dev/ata/atapi-cam.c
+++ b/sys/dev/ata/atapi-cam.c
@@ -346,8 +346,8 @@ atapi_action(struct cam_sim *sim, union ccb *ccb)
struct ccb_trans_settings *cts = &ccb->cts;
/*
- * XXX The default CAM transport code is very scsi specific and
- * doesn't understand IDE speeds very well. Be silent about it
+ * XXX The default CAM transport code is very SCSI-specific and
+ * doesn't understand IDE speeds very well. Be silent about it
* here and let it default to what is set in XPT_PATH_INQ
*/
CAM_DEBUG(ccb->ccb_h.path, CAM_DEBUG_SUBTRACE, ("GET_TRAN_SETTINGS\n"));
@@ -561,6 +561,11 @@ atapi_cb(struct ata_request *request)
#endif
if (hcb_status != 0) {
csio->scsi_status = SCSI_STATUS_CHECK_COND;
+#if 0
+ /*
+ * XXX Temporarily disable autosense, as this seems to cause
+ * a missed ATA interrupt.
+ */
if ((csio->ccb_h.flags & CAM_DIS_AUTOSENSE) == 0) {
int8_t ccb[16] = { ATAPI_REQUEST_SENSE, 0, 0, 0,
sizeof(struct atapi_sense), 0, 0, 0, 0, 0, 0,
@@ -572,6 +577,7 @@ atapi_cb(struct ata_request *request)
csio->ccb_h.status |= CAM_AUTOSNS_VALID;
}
}
+#endif
free_hcb_and_ccb_done(hcb, CAM_SCSI_STATUS_ERROR);
}
else {
OpenPOWER on IntegriCloud