|ATA_EXEC_INTERNAL_SG(9)||libata Core Internals||ATA_EXEC_INTERNAL_SG(9)|
ata_exec_internal_sg - execute libata internal command
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);
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.
Zero on success, AC_ERR_* mask on failure
|January 2017||Kernel Hackers Manual 4.8.|