summaryrefslogtreecommitdiffstats
path: root/sys/dev/ahci/ahci.h
diff options
context:
space:
mode:
authormav <mav@FreeBSD.org>2017-02-08 16:07:59 +0000
committermav <mav@FreeBSD.org>2017-02-08 16:07:59 +0000
commitfebf34e08cb22a28a9caf6ae59e2c433a9640e60 (patch)
tree41ccfb3029b8c84d3afa5bed12167c45141e73f1 /sys/dev/ahci/ahci.h
parentd24939b123c155083b8d3035f7bc752b09f0ff67 (diff)
downloadFreeBSD-src-febf34e08cb22a28a9caf6ae59e2c433a9640e60.zip
FreeBSD-src-febf34e08cb22a28a9caf6ae59e2c433a9640e60.tar.gz
MFC r312767: Partially workaround ASMedia HBA error recovery.
Taking closer look on my ASM1062 I found that it has bunch of issues around error recovery: reported wrong CCS, failed commands reported as completed, READ LOG EXT times out after NCQ error. This patch workarounds first two problems, that were making ATAPI devices close to unusable on these HBAs.
Diffstat (limited to 'sys/dev/ahci/ahci.h')
-rw-r--r--sys/dev/ahci/ahci.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/dev/ahci/ahci.h b/sys/dev/ahci/ahci.h
index 61643c1..ca7631e 100644
--- a/sys/dev/ahci/ahci.h
+++ b/sys/dev/ahci/ahci.h
@@ -574,6 +574,7 @@ enum ahci_err_type {
#define AHCI_Q_SATA1_UNIT0 0x00008000 /* need better method for this */
#define AHCI_Q_ABAR0 0x00010000
#define AHCI_Q_1MSI 0x00020000
+#define AHCI_Q_NOCCS 0x00400000
#define AHCI_Q_BIT_STRING \
"\020" \
@@ -594,7 +595,8 @@ enum ahci_err_type {
"\017MAXIO_64K" \
"\020SATA1_UNIT0" \
"\021ABAR0" \
- "\0221MSI"
+ "\0221MSI" \
+ "\027NOCCS"
int ahci_attach(device_t dev);
int ahci_detach(device_t dev);
OpenPOWER on IntegriCloud