Lines Matching refs:sense
286 /** fill sense buffer according to device sense */
289 create_sense(ide_device_info *device, scsi_sense *sense)
291 memset(sense, 0, sizeof(*sense));
293 sense->error_code = SCSIS_CURR_ERROR;
294 sense->sense_key = decode_sense_key(device->combined_sense);
295 sense->add_sense_length = sizeof(*sense) - 7;
296 sense->asc = decode_sense_asc(device->combined_sense);
297 sense->ascq = decode_sense_ascq(device->combined_sense);
298 sense->sense_key_spec.raw.SKSV = 0; // no additional info
302 /** finish command, updating sense of device and request, and release bus */
307 SHOW_FLOW(3, "%p, subsys_status=%d, sense=%x",
377 /** set CHECK CONDITION of device and perform auto-sense if requested.
393 // copy sense only if caller requested it
395 scsi_sense sense;
400 // we cannot copy sense directly as sense buffer may be too small
401 create_sense(device, &sense);
403 sense_len = min(SCSI_MAX_SENSE_SIZE, sizeof(sense));
405 memcpy(request->sense, &sense, sense_len);
409 // device sense gets reset once it's read