summaryrefslogtreecommitdiff
path: root/include/linux/ata.h
diff options
context:
space:
mode:
authorHannes Reinecke <hare@suse.de>2015-03-27 18:46:30 +0300
committerTejun Heo <tj@kernel.org>2015-03-27 18:59:21 +0300
commit9faa643855df6f673f08543576c759b82dd270d3 (patch)
tree39c8dade6f6d9b826d68fcc11b51f08c41583d9e /include/linux/ata.h
parent3a02824396c1df1db422d067b0fdcac724f44dd6 (diff)
downloadlinux-9faa643855df6f673f08543576c759b82dd270d3.tar.xz
libata: use READ_LOG_DMA_EXT
If READ_LOG_DMA_EXT is supported we should try to use it for reading the log pages. Signed-off-by: Hannes Reinecke <hare@suse.de> Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'include/linux/ata.h')
-rw-r--r--include/linux/ata.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/linux/ata.h b/include/linux/ata.h
index 1648026e06b4..681520f8a3de 100644
--- a/include/linux/ata.h
+++ b/include/linux/ata.h
@@ -696,6 +696,13 @@ static inline bool ata_id_wcache_enabled(const u16 *id)
return id[ATA_ID_CFS_ENABLE_1] & (1 << 5);
}
+static inline bool ata_id_has_read_log_dma_ext(const u16 *id)
+{
+ if (!(id[ATA_ID_CFS_ENABLE_2] & (1 << 15)))
+ return false;
+ return id[ATA_ID_COMMAND_SET_3] & (1 << 3);
+}
+
/**
* ata_id_major_version - get ATA level of drive
* @id: Identify data