diff options
Diffstat (limited to 'drivers/ide/ide-floppy.c')
-rw-r--r-- | drivers/ide/ide-floppy.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/ide/ide-floppy.c b/drivers/ide/ide-floppy.c index e658aafc51da..b1d6905fd8ea 100644 --- a/drivers/ide/ide-floppy.c +++ b/drivers/ide/ide-floppy.c | |||
@@ -320,6 +320,9 @@ static void ide_floppy_callback(ide_drive_t *drive) | |||
320 | 320 | ||
321 | debug_log("Reached %s\n", __func__); | 321 | debug_log("Reached %s\n", __func__); |
322 | 322 | ||
323 | if (floppy->failed_pc == pc) | ||
324 | floppy->failed_pc = NULL; | ||
325 | |||
323 | if (pc->c[0] == GPCMD_READ_10 || pc->c[0] == GPCMD_WRITE_10 || | 326 | if (pc->c[0] == GPCMD_READ_10 || pc->c[0] == GPCMD_WRITE_10 || |
324 | (pc->rq && blk_pc_request(pc->rq))) | 327 | (pc->rq && blk_pc_request(pc->rq))) |
325 | uptodate = 1; /* FIXME */ | 328 | uptodate = 1; /* FIXME */ |
@@ -435,8 +438,6 @@ static ide_startstop_t idefloppy_pc_intr(ide_drive_t *drive) | |||
435 | return ide_stopped; | 438 | return ide_stopped; |
436 | } | 439 | } |
437 | pc->error = 0; | 440 | pc->error = 0; |
438 | if (floppy->failed_pc == pc) | ||
439 | floppy->failed_pc = NULL; | ||
440 | /* Command finished - Call the callback function */ | 441 | /* Command finished - Call the callback function */ |
441 | pc->callback(drive); | 442 | pc->callback(drive); |
442 | return ide_stopped; | 443 | return ide_stopped; |