summaryrefslogtreecommitdiffstats
path: root/hw/ide/core.c
diff options
context:
space:
mode:
authorPaolo Bonzini2018-06-06 21:09:52 +0200
committerJohn Snow2018-06-08 19:36:31 +0200
commitee4cd662addd2ef51c5bc33e57f7fc6cdee830a0 (patch)
treef96d2729b0f99f1dd7dccc156cc050c22d9c2bf5 /hw/ide/core.c
parentide: push end_transfer_func out of start_transfer callback, rename callback (diff)
downloadqemu-ee4cd662addd2ef51c5bc33e57f7fc6cdee830a0.tar.gz
qemu-ee4cd662addd2ef51c5bc33e57f7fc6cdee830a0.tar.xz
qemu-ee4cd662addd2ef51c5bc33e57f7fc6cdee830a0.zip
ide: call ide_cmd_done from ide_transfer_stop
The code can simply be moved to the sole caller that has notify == true. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: John Snow <jsnow@redhat.com> Reviewed-by: John Snow <jsnow@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Message-id: 20180606190955.20845-5-jsnow@redhat.com Signed-off-by: John Snow <jsnow@redhat.com>
Diffstat (limited to 'hw/ide/core.c')
-rw-r--r--hw/ide/core.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/hw/ide/core.c b/hw/ide/core.c
index 1a6cb337bf..54799ea6fb 100644
--- a/hw/ide/core.c
+++ b/hw/ide/core.c
@@ -548,26 +548,23 @@ static void ide_cmd_done(IDEState *s)
}
static void ide_transfer_halt(IDEState *s,
- void(*end_transfer_func)(IDEState *),
- bool notify)
+ void(*end_transfer_func)(IDEState *))
{
s->end_transfer_func = end_transfer_func;
s->data_ptr = s->io_buffer;
s->data_end = s->io_buffer;
s->status &= ~DRQ_STAT;
- if (notify) {
- ide_cmd_done(s);
- }
}
void ide_transfer_stop(IDEState *s)
{
- ide_transfer_halt(s, ide_transfer_stop, true);
+ ide_transfer_halt(s, ide_transfer_stop);
+ ide_cmd_done(s);
}
static void ide_transfer_cancel(IDEState *s)
{
- ide_transfer_halt(s, ide_transfer_cancel, false);
+ ide_transfer_halt(s, ide_transfer_cancel);
}
int64_t ide_get_sector(IDEState *s)