Commit c3e88d8c4f5bfbb83d7e3c1a6251eefa78ad485a
1 parent
1870a74c
Allow more IDE power management, by Ben Guthro.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3165 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
8 additions
and
2 deletions
hw/ide.c
| @@ -1986,6 +1986,8 @@ static void ide_ioport_write(void *opaque, uint32_t addr, uint32_t val) | @@ -1986,6 +1986,8 @@ static void ide_ioport_write(void *opaque, uint32_t addr, uint32_t val) | ||
| 1986 | case 0x67: /* NOP */ | 1986 | case 0x67: /* NOP */ |
| 1987 | case 0x96: /* NOP */ | 1987 | case 0x96: /* NOP */ |
| 1988 | case 0x9a: /* NOP */ | 1988 | case 0x9a: /* NOP */ |
| 1989 | + case 0x42: /* enable Automatic Acoustic Mode */ | ||
| 1990 | + case 0xc2: /* disable Automatic Acoustic Mode */ | ||
| 1989 | s->status = READY_STAT | SEEK_STAT; | 1991 | s->status = READY_STAT | SEEK_STAT; |
| 1990 | ide_set_irq(s); | 1992 | ide_set_irq(s); |
| 1991 | break; | 1993 | break; |
| @@ -2024,13 +2026,17 @@ static void ide_ioport_write(void *opaque, uint32_t addr, uint32_t val) | @@ -2024,13 +2026,17 @@ static void ide_ioport_write(void *opaque, uint32_t addr, uint32_t val) | ||
| 2024 | s->status = READY_STAT; | 2026 | s->status = READY_STAT; |
| 2025 | ide_set_irq(s); | 2027 | ide_set_irq(s); |
| 2026 | break; | 2028 | break; |
| 2027 | - case WIN_STANDBYNOW1: | 2029 | + case WIN_STANDBY: |
| 2030 | + case WIN_STANDBY2: | ||
| 2031 | + case WIN_STANDBYNOW1: | ||
| 2028 | case WIN_STANDBYNOW2: | 2032 | case WIN_STANDBYNOW2: |
| 2029 | case WIN_IDLEIMMEDIATE: | 2033 | case WIN_IDLEIMMEDIATE: |
| 2030 | case CFA_IDLEIMMEDIATE: | 2034 | case CFA_IDLEIMMEDIATE: |
| 2031 | case WIN_SETIDLE1: | 2035 | case WIN_SETIDLE1: |
| 2032 | case WIN_SETIDLE2: | 2036 | case WIN_SETIDLE2: |
| 2033 | - s->status = READY_STAT; | 2037 | + case WIN_SLEEPNOW1: |
| 2038 | + case WIN_SLEEPNOW2: | ||
| 2039 | + s->status = READY_STAT; | ||
| 2034 | ide_set_irq(s); | 2040 | ide_set_irq(s); |
| 2035 | break; | 2041 | break; |
| 2036 | /* ATAPI commands */ | 2042 | /* ATAPI commands */ |