aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/ide-scsi.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi/ide-scsi.c')
-rw-r--r--drivers/scsi/ide-scsi.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/drivers/scsi/ide-scsi.c b/drivers/scsi/ide-scsi.c
index 5ed00069846d..6c4f0f081785 100644
--- a/drivers/scsi/ide-scsi.c
+++ b/drivers/scsi/ide-scsi.c
@@ -588,19 +588,14 @@ static ide_startstop_t idescsi_issue_pc (ide_drive_t *drive, idescsi_pc_t *pc)
588 hwif->sg_mapped = 0; 588 hwif->sg_mapped = 0;
589 } 589 }
590 590
591 SELECT_DRIVE(drive);
592
593 ide_pktcmd_tf_load(drive, IDE_TFLAG_NO_SELECT_MASK, bcount, dma); 591 ide_pktcmd_tf_load(drive, IDE_TFLAG_NO_SELECT_MASK, bcount, dma);
594 592
595 if (dma) 593 if (dma)
596 set_bit(PC_DMA_OK, &pc->flags); 594 set_bit(PC_DMA_OK, &pc->flags);
597 595
598 if (test_bit(IDESCSI_DRQ_INTERRUPT, &scsi->flags)) { 596 if (test_bit(IDESCSI_DRQ_INTERRUPT, &scsi->flags)) {
599 BUG_ON(HWGROUP(drive)->handler != NULL); 597 ide_execute_command(drive, WIN_PACKETCMD, &idescsi_transfer_pc,
600 ide_set_handler(drive, &idescsi_transfer_pc, 598 get_timeout(pc), idescsi_expiry);
601 get_timeout(pc), idescsi_expiry);
602 /* Issue the packet command */
603 HWIF(drive)->OUTB(WIN_PACKETCMD, IDE_COMMAND_REG);
604 return ide_started; 599 return ide_started;
605 } else { 600 } else {
606 /* Issue the packet command */ 601 /* Issue the packet command */