ATA_EXEC_INTERNAL_SG(9) libata Core Internals ATA_EXEC_INTERNAL_SG(9)

NAME ata_exec_internal_sg - execute libata internal command

SYNOPSIS unsigned ata_exec_internal_sg(struct ata_device * dev, struct ata_taskfile * tf, const u8 * cdb, int dma_dir, struct scatterlist * sgl, unsigned int n_elem, unsigned long timeout);

ARGUMENTS dev Device to which the command is sent

tf Taskfile registers for the command and the result

cdb CDB for packet command

dma_dir Data tranfer direction of the command

sgl sg list for the data buffer of the command

n_elem Number of sg entries

timeout Timeout in msecs (0 for default)

DESCRIPTION Executes libata internal command with timeout. tf contains command on entry and result on return. Timeout and error conditions are reported via return value. No recovery action is taken after a command times out. It´s caller´s duty to clean up after timeout.

LOCKING None. Should be called with kernel context, might sleep.

RETURNS Zero on success, AC_ERR_* mask on failure

AUTHOR Jeff Garzik Author.

COPYRIGHT Kernel Hackers Manual 2.6. May 2011 ATA_EXEC_INTERNAL_SG(9)