ide-{floppy,tape,scsi}: 400ns delay is required after executing the command
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Mon, 28 Apr 2008 21:44:39 +0000 (23:44 +0200)
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Mon, 28 Apr 2008 21:44:39 +0000 (23:44 +0200)
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
drivers/ide/ide-floppy.c
drivers/ide/ide-tape.c
drivers/scsi/ide-scsi.c

index b9983c4..da79248 100644 (file)
@@ -698,6 +698,7 @@ static ide_startstop_t idefloppy_issue_pc(ide_drive_t *drive,
                /* Issue the packet command */
                hwif->OUTBSYNC(drive, WIN_PACKETCMD,
                               hwif->io_ports.command_addr);
+               ndelay(400);
                return (*pkt_xfer_routine) (drive);
        }
 }
index f3f231d..dc88431 100644 (file)
@@ -1058,6 +1058,7 @@ static ide_startstop_t idetape_issue_pc(ide_drive_t *drive,
        } else {
                hwif->OUTBSYNC(drive, WIN_PACKETCMD,
                               hwif->io_ports.command_addr);
+               ndelay(400);
                return idetape_transfer_pc(drive);
        }
 }
index 8f716da..8b1c783 100644 (file)
@@ -576,6 +576,7 @@ static ide_startstop_t idescsi_issue_pc(ide_drive_t *drive,
                /* Issue the packet command */
                hwif->OUTBSYNC(drive, WIN_PACKETCMD,
                               hwif->io_ports.command_addr);
+               ndelay(400);
                return idescsi_transfer_pc(drive);
        }
 }