Clearly, AHCI as is is not perfect yet (intentionally, release early, release often, remember?). This patch set makes it work with SeaBIOS so booting Windows 7 works flawlessly for me. it also adds some speedups and fixes a level based interrupts, rendering ahci useful on PPC targets.
In preparation of potential non-ich9 implementations, this set also splits ahci code from concrete ich9 specific code. That way we can later on create other AHCI adapters while reusing a lot of code. Git tree (including BIOS patch to enable booting from AHCI): git://repo.or.cz/qemu/ahci.git ahci Alexander Graf (7): ahci: split ICH and AHCI even more ahci: send init d2h fis on fis enable ahci: use qiov instead of dma helpers ahci: Implement HBA reset ahci: make number of ports runtime determined ahci: free dynamically allocated iovs ahci: fix !msi interrupts Sebastian Herbszt (1): ahci: split ICH9 from core Makefile.objs | 1 + hw/ide/ahci.c | 594 +++++++++++++++------------------------------------------ hw/ide/ahci.h | 313 ++++++++++++++++++++++++++++++ hw/ide/ich.c | 148 ++++++++++++++ 4 files changed, 618 insertions(+), 438 deletions(-) create mode 100644 hw/ide/ahci.h create mode 100644 hw/ide/ich.c