ata_scsi_translate (9) - Linux Manuals
ata_scsi_translate: Translate then issue SCSI command to ATA device
NAME
ata_scsi_translate - Translate then issue SCSI command to ATA device
SYNOPSIS
-
int ata_scsi_translate(struct ata_device
* dev, struct scsi_cmnd* cmd, ata_xlat_func_txlat_func);
ARGUMENTS
dev
-
- ATA device to which the command is addressed
cmd
- SCSI command to execute
xlat_func
- Actor which translates cmd to an ATA taskfile
DESCRIPTION
Our ->queuecommand function has decided that the SCSI command issued can be directly translated into an ATA command, rather than handled internally.
This function sets up an ata_queued_cmd structure for the SCSI command, and sends that ata_queued_cmd to the hardware.
The xlat_func argument (actor) returns 0 if ready to execute ATA command, else 1 to finish translation. If 1 is returned then cmd->result (and possibly cmd->sense_buffer) are assumed to be set reflecting an error condition or clean (early) termination.
LOCKING: spin_lock_irqsave(host lock)
RETURN
0 on success, SCSI_ML_QUEUE_DEVICE_BUSY if the command needs to be deferred.
AUTHOR
Jeff Garzik
- Author.
COPYRIGHT