summaryrefslogtreecommitdiffstats
path: root/usr.sbin
diff options
context:
space:
mode:
authormav <mav@FreeBSD.org>2015-03-27 08:48:44 +0000
committermav <mav@FreeBSD.org>2015-03-27 08:48:44 +0000
commitc9d7a5b073b94c130a1fd890cb90dca17a080c17 (patch)
treea6db6a4e44faee3c62d74f974fc99f28ff1ee284 /usr.sbin
parentb30732f21ddb4bfe732beea04ec51163a839583b (diff)
downloadFreeBSD-src-c9d7a5b073b94c130a1fd890cb90dca17a080c17.zip
FreeBSD-src-c9d7a5b073b94c130a1fd890cb90dca17a080c17.tar.gz
MFC r279977: Fix NOP and IDLE commands for virtual AHCI disks.
Diffstat (limited to 'usr.sbin')
-rw-r--r--usr.sbin/bhyve/pci_ahci.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/usr.sbin/bhyve/pci_ahci.c b/usr.sbin/bhyve/pci_ahci.c
index 75dce37..2a1ca58 100644
--- a/usr.sbin/bhyve/pci_ahci.c
+++ b/usr.sbin/bhyve/pci_ahci.c
@@ -1583,10 +1583,13 @@ ahci_handle_cmd(struct ahci_port *p, int slot, uint8_t *cfis)
case ATA_READ_LOG_DMA_EXT:
ahci_handle_read_log(p, slot, cfis);
break;
- case ATA_STANDBY_CMD:
- break;
case ATA_NOP:
+ ahci_write_fis_d2h(p, slot, cfis,
+ (ATA_E_ABORT << 8) | ATA_S_READY | ATA_S_ERROR);
+ break;
+ case ATA_STANDBY_CMD:
case ATA_STANDBY_IMMEDIATE:
+ case ATA_IDLE_CMD:
case ATA_IDLE_IMMEDIATE:
case ATA_SLEEP:
ahci_write_fis_d2h(p, slot, cfis, ATA_S_READY | ATA_S_DSC);
OpenPOWER on IntegriCloud