OpenBSD/src F2af41Bsys/dev/ic ahci.c

   Turn off the code which waits for AHCI_PREG_CMD_CR to be set by the
   HBA after ahci_default_port_start() sets AHCI_PREG_CMD_ST. The AHCI
   spec. rev. 1.3 only requires the inverse to be true, i. e. that a
   HBA clears AHCI_PREG_CMD_CR when AHCI_PREG_CMD_ST gets cleared by
   software/driver. In fact, some HBAs will not raise AHCI_PREG_CMD_CR
   as an immediate consequence of AHCI_PREG_CMD_ST being set. Actually
   neither the FreeBSD, Linux nor NetBSD counterpart of ahci(4) has an
   analogous check. Disabling that wait fixes "failed to start command
   DMA on port N, disabling" bails during attach.

   From Marius Strobl
   ok deraadt@ jmatthew@
VersionDeltaFile
1.33+1-6sys/dev/ic/ahci.c
+1-61 files

UnifiedSplitRaw