]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/scsi/ide-scsi.c
[SCSI] qla2xxx: Don't depend on mailbox return values while enabling FCE tracing.
[linux-2.6-omap-h63xx.git] / drivers / scsi / ide-scsi.c
index 1168fb0a713cb5e9633c8c3aafd1eea324a12b58..44d8d5163a1a357e2e4a41b22544f28df25823ce 100644 (file)
@@ -164,7 +164,7 @@ static void idescsi_input_buffers(ide_drive_t *drive, struct ide_atapi_pc *pc,
 
        if (bcount) {
                printk (KERN_ERR "ide-scsi: scatter gather table too small, discarding data\n");
-               ide_atapi_discard_data(drive, bcount);
+               ide_pad_transfer(drive, 0, bcount);
        }
 }
 
@@ -201,7 +201,7 @@ static void idescsi_output_buffers(ide_drive_t *drive, struct ide_atapi_pc *pc,
 
        if (bcount) {
                printk (KERN_ERR "ide-scsi: scatter gather table too small, padding with zeros\n");
-               ide_atapi_write_zeros(drive, bcount);
+               ide_pad_transfer(drive, 1, bcount);
        }
 }
 
@@ -256,7 +256,8 @@ idescsi_atapi_error(ide_drive_t *drive, struct request *rq, u8 stat, u8 err)
 
        if (ide_read_status(drive) & (BUSY_STAT | DRQ_STAT))
                /* force an abort */
-               hwif->OUTB(WIN_IDLEIMMEDIATE, hwif->io_ports.command_addr);
+               hwif->OUTBSYNC(drive, WIN_IDLEIMMEDIATE,
+                              hwif->io_ports.command_addr);
 
        rq->errors++;
 
@@ -437,7 +438,7 @@ static ide_startstop_t idescsi_pc_intr (ide_drive_t *drive)
                                }
                                pc->xferred += temp;
                                pc->cur_pos += temp;
-                               ide_atapi_discard_data(drive, bcount - temp);
+                               ide_pad_transfer(drive, 0, bcount - temp);
                                ide_set_handler(drive, &idescsi_pc_intr, get_timeout(pc), idescsi_expiry);
                                return ide_started;
                        }
@@ -573,7 +574,7 @@ static ide_startstop_t idescsi_issue_pc(ide_drive_t *drive,
                return ide_started;
        } else {
                /* Issue the packet command */
-               hwif->OUTB(WIN_PACKETCMD, hwif->io_ports.command_addr);
+               ide_execute_pkt_cmd(drive);
                return idescsi_transfer_pc(drive);
        }
 }