Hm. Fast/wide and synchronous should be no problem (unless there are certain timings expected).
Fast should be a non-issue. Wide may be a problem if we get odd sized transfers wrong. IIUC wide transfers are initiated by the target (disk) and qemu never does this, so should not be a problem either.
Tagged command is a bigger issue, since afaik none of QEMU's HBAs support it.
Other QEMU HBAs (LSI53C895A) do support tagged command queueing, however the ESP does not.
By my reading qemu esp emulation is missing proper handling of MESSAGE phases. It assumes only a single IDENTIFY byte is sent, probably interpreting subsequent SIMPLE queue tags as the start of the command block. Implementing full command queueing is fairly tricky. However a stub implementation that accepts the tag but avoids disconnecting (force sequential execution of commands) should be somewhat simpler.
Paul