aboutsummaryrefslogtreecommitdiff
path: root/hw/ide/internal.h
diff options
context:
space:
mode:
authorBlue Swirl <blauwirbel@gmail.com>2009-11-07 14:13:05 +0000
committerBlue Swirl <blauwirbel@gmail.com>2009-11-07 14:13:05 +0000
commit4a6435639781214a14f3c6054955e5ef16298d72 (patch)
treefb4d38641d83dc4bf98b56aa91a0d070db0ae425 /hw/ide/internal.h
parentb55a37c981914aa8ecd21b9a2a2fb37f39b917c5 (diff)
downloadqemu-4a6435639781214a14f3c6054955e5ef16298d72.zip
qemu-4a6435639781214a14f3c6054955e5ef16298d72.tar.gz
qemu-4a6435639781214a14f3c6054955e5ef16298d72.tar.bz2
IDE: Fix reset handling
Problem: x86 systems could not survive a few system_resets. Clear most of IDE state when reset. Implement the missing reset handlers. Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Diffstat (limited to 'hw/ide/internal.h')
-rw-r--r--hw/ide/internal.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/hw/ide/internal.h b/hw/ide/internal.h
index cfae4c2..567616e 100644
--- a/hw/ide/internal.h
+++ b/hw/ide/internal.h
@@ -525,13 +525,14 @@ extern const VMStateDescription vmstate_ide_drive;
#define VMSTATE_IDE_DRIVES(_field, _state) \
VMSTATE_STRUCT_ARRAY(_field, _state, 2, 3, vmstate_ide_drive, IDEState)
-void ide_reset(IDEState *s);
+void ide_bus_reset(IDEBus *bus);
int64_t ide_get_sector(IDEState *s);
void ide_set_sector(IDEState *s, int64_t sector_num);
void ide_dma_cancel(BMDMAState *bm);
void ide_dma_restart_cb(void *opaque, int running, int reason);
void ide_dma_error(IDEState *s);
+void ide_dma_reset(BMDMAState *bm);
void ide_atapi_cmd_ok(IDEState *s);
void ide_atapi_cmd_error(IDEState *s, int sense_key, int asc);