Commit dfe1ea8f authored by Kevin Wolf's avatar Kevin Wolf Committed by Stefan Hajnoczi
Browse files

ide: Clean up ide_exec_cmd()



All commands are now converted to ide_cmd_table handlers, so it can be
unconditional now and the old switch block can go.

Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
Signed-off-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
parent ff352677
Loading
Loading
Loading
Loading
+12 −24
Original line number Diff line number Diff line
@@ -1694,6 +1694,7 @@ static bool ide_cmd_permitted(IDEState *s, uint32_t cmd)
void ide_exec_cmd(IDEBus *bus, uint32_t val)
{
    IDEState *s;
    bool complete;

#if defined(DEBUG_IDE)
    printf("ide: CMD=%02x\n", val);
@@ -1708,12 +1709,11 @@ void ide_exec_cmd(IDEBus *bus, uint32_t val)
        return;

    if (!ide_cmd_permitted(s, val)) {
        goto abort_cmd;
        ide_abort_command(s);
        ide_set_irq(s->bus);
        return;
    }

    if (ide_cmd_table[val].handler != NULL) {
        bool complete;

    s->status = READY_STAT | BUSY_STAT;
    s->error = 0;

@@ -1728,18 +1728,6 @@ void ide_exec_cmd(IDEBus *bus, uint32_t val)

        ide_set_irq(s->bus);
    }

        return;
    }

    switch(val) {
    default:
        /* should not be reachable */
    abort_cmd:
        ide_abort_command(s);
        ide_set_irq(s->bus);
        break;
    }
}

uint32_t ide_ioport_read(void *opaque, uint32_t addr1)