diff options
author | mav <mav@FreeBSD.org> | 2015-03-14 10:38:25 +0000 |
---|---|---|
committer | mav <mav@FreeBSD.org> | 2015-03-14 10:38:25 +0000 |
commit | dd99a4abcb0279aa615f45d11889ac5e3c15ee58 (patch) | |
tree | e28ee0c77bfc6ea29835132fdfefd7e6823006f6 /usr.sbin | |
parent | 36590090f2941d3d2dcfd8605db53e743a8432d3 (diff) | |
download | FreeBSD-src-dd99a4abcb0279aa615f45d11889ac5e3c15ee58.zip FreeBSD-src-dd99a4abcb0279aa615f45d11889ac5e3c15ee58.tar.gz |
Fix NOP and IDLE commands for virtual AHCI disks.
MFC after: 2 weeks
Diffstat (limited to 'usr.sbin')
-rw-r--r-- | usr.sbin/bhyve/pci_ahci.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/usr.sbin/bhyve/pci_ahci.c b/usr.sbin/bhyve/pci_ahci.c index af20e71..c9ce5e4 100644 --- a/usr.sbin/bhyve/pci_ahci.c +++ b/usr.sbin/bhyve/pci_ahci.c @@ -1582,10 +1582,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); |