How to emulate a SATA disk drive in QEMU

Dragonight picture Dragonight · Jan 20, 2018 · Viewed 9.3k times · Source

I want to emulate a SATA disk drive in QEMU to check a device driver I'm trying to develop. How can this be done? Would greatly appreciate your help.

Answer

mwfearnley picture mwfearnley · May 19, 2018

The Gentoo Wiki offers these parameters:

-drive id=disk,file=IMAGE.img,if=none \
-device ahci,id=ahci \
-device ide-hd,drive=disk,bus=ahci.0

Set emulation layer for an ICH-9 AHCI controller (not yet stable ) and use the specified image file for it. The AHCI emulation supports NCQ, so multiple read or write requests can be outstanding at the same time.

EDIT: A revision to the Wiki on 31 October 2018 suggests the AHCI controller may be stable now.