summary refs log tree commit diff stats
path: root/hw/ide
diff options
context:
space:
mode:
authorSebastian Herbszt <herbszt@gmx.de>2010-12-14 01:34:43 +0100
committerKevin Wolf <kwolf@redhat.com>2010-12-17 16:11:03 +0100
commit38a08f0557418d14ad49616b31f336b30c2c684d (patch)
tree442392f1c07cb7bc1d4261d59082a2daa4f9678b /hw/ide
parentf675d5c889363436822e5c10f3da1c843109d1e3 (diff)
downloadfocaccia-qemu-38a08f0557418d14ad49616b31f336b30c2c684d.tar.gz
focaccia-qemu-38a08f0557418d14ad49616b31f336b30c2c684d.zip
ahci: set SATA Mode Select
Set SATA Mode Select to AHCI in the Address Map Register.

Signed-off-by: Sebastian Herbszt <herbszt@gmx.de>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'hw/ide')
-rw-r--r--hw/ide/ahci.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/hw/ide/ahci.c b/hw/ide/ahci.c
index f937a92edf..8ae236af30 100644
--- a/hw/ide/ahci.c
+++ b/hw/ide/ahci.c
@@ -1473,6 +1473,9 @@ static int pci_ahci_init(PCIDevice *dev)
     d->card.config[PCI_LATENCY_TIMER]   = 0x00;  /* Latency timer */
     pci_config_set_interrupt_pin(d->card.config, 1);
 
+    /* XXX Software should program this register */
+    d->card.config[0x90]   = 1 << 6; /* Address Map Register - AHCI mode */
+
     qemu_register_reset(ahci_reset, d);
 
     /* XXX BAR size should be 1k, but that breaks, so bump it to 4k for now */