aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorths <ths@c046a42c-6fe2-441c-8c8c-71466251a162>2007-09-13 12:28:42 +0000
committerths <ths@c046a42c-6fe2-441c-8c8c-71466251a162>2007-09-13 12:28:42 +0000
commitc3e88d8c4f5bfbb83d7e3c1a6251eefa78ad485a (patch)
tree32417a9e4c117c01574664d4fd67931a65b1d09e
parent1870a74c88461cf6003e290ba9485fa6bf9ed881 (diff)
Allow more IDE power management, by Ben Guthro.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3165 c046a42c-6fe2-441c-8c8c-71466251a162
-rw-r--r--hw/ide.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/hw/ide.c b/hw/ide.c
index 3ff90c4de0..4e17db3f05 100644
--- a/hw/ide.c
+++ b/hw/ide.c
@@ -1986,6 +1986,8 @@ static void ide_ioport_write(void *opaque, uint32_t addr, uint32_t val)
case 0x67: /* NOP */
case 0x96: /* NOP */
case 0x9a: /* NOP */
+ case 0x42: /* enable Automatic Acoustic Mode */
+ case 0xc2: /* disable Automatic Acoustic Mode */
s->status = READY_STAT | SEEK_STAT;
ide_set_irq(s);
break;
@@ -2024,13 +2026,17 @@ static void ide_ioport_write(void *opaque, uint32_t addr, uint32_t val)
s->status = READY_STAT;
ide_set_irq(s);
break;
- case WIN_STANDBYNOW1:
+ case WIN_STANDBY:
+ case WIN_STANDBY2:
+ case WIN_STANDBYNOW1:
case WIN_STANDBYNOW2:
case WIN_IDLEIMMEDIATE:
case CFA_IDLEIMMEDIATE:
case WIN_SETIDLE1:
case WIN_SETIDLE2:
- s->status = READY_STAT;
+ case WIN_SLEEPNOW1:
+ case WIN_SLEEPNOW2:
+ s->status = READY_STAT;
ide_set_irq(s);
break;
/* ATAPI commands */