aboutsummaryrefslogtreecommitdiff
path: root/hw/ide/ahci.h
diff options
context:
space:
mode:
authorJohn Snow <jsnow@redhat.com>2014-11-03 18:56:15 -0500
committerStefan Hajnoczi <stefanha@redhat.com>2014-11-14 09:20:35 +0000
commit72a065dbb13dd187040c61cdde79476720341cfa (patch)
treea064ad929e286383d0a49c4a9d84dff1dd7b95f3 /hw/ide/ahci.h
parent3251bdcf1c67427d964517053c3d185b46e618e8 (diff)
downloadqemu-72a065dbb13dd187040c61cdde79476720341cfa.zip
qemu-72a065dbb13dd187040c61cdde79476720341cfa.tar.gz
qemu-72a065dbb13dd187040c61cdde79476720341cfa.tar.bz2
ahci: add is_ncq predicate helper
A small helper to determine which S/ATA commands are destined to be routed to the NCQ pathways. This references SATA 3.2 section 13.6, Native Command Queueing. See sections 13.6.4, 13.6.5, 13.6.6, 13.6.7 and 13.6.8 for all SATA commands considered to be part of the NCQ feature set. This is summarized in a small list in section 13.6.3.1 and again in 13.6.3.2. Not all of these NCQ commands are currently supported, so the error pathways are adjusted slightly to be more informative in the case they are encountered. Signed-off-by: John Snow <jsnow@redhat.com> Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Message-id: 1415058979-16604-2-git-send-email-jsnow@redhat.com Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Diffstat (limited to 'hw/ide/ahci.h')
-rw-r--r--hw/ide/ahci.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/hw/ide/ahci.h b/hw/ide/ahci.h
index b123237..e0d2eb8 100644
--- a/hw/ide/ahci.h
+++ b/hw/ide/ahci.h
@@ -186,6 +186,9 @@
#define READ_FPDMA_QUEUED 0x60
#define WRITE_FPDMA_QUEUED 0x61
+#define NCQ_NON_DATA 0x63
+#define RECEIVE_FPDMA_QUEUED 0x65
+#define SEND_FPDMA_QUEUED 0x64
#define RES_FIS_DSFIS 0x00
#define RES_FIS_PSFIS 0x20