diff --git a/drivers/ide/ide-taskfile.c b/drivers/ide/ide-taskfile.c
index 1a34edb..5f6d01a 100644
--- a/drivers/ide/ide-taskfile.c
+++ b/drivers/ide/ide-taskfile.c
@@ -170,23 +170,25 @@
 
 	ide_tf_load(drive, task);
 
-	if (task->handler != NULL) {
-		if (task->prehandler != NULL) {
-			hwif->OUTBSYNC(drive, tf->command, IDE_COMMAND_REG);
-			ndelay(400);	/* FIXME */
-			return task->prehandler(drive, task->rq);
-		}
+	switch (task->data_phase) {
+	case TASKFILE_MULTI_OUT:
+	case TASKFILE_OUT:
+		hwif->OUTBSYNC(drive, tf->command, IDE_COMMAND_REG);
+		ndelay(400);	/* FIXME */
+		return pre_task_out_intr(drive, task->rq);
+	case TASKFILE_MULTI_IN:
+	case TASKFILE_IN:
+	case TASKFILE_NO_DATA:
 		ide_execute_command(drive, tf->command, task->handler, WAIT_WORSTCASE, NULL);
 		return ide_started;
-	}
-
-	if (task_dma_ok(task) && drive->using_dma && !hwif->dma_setup(drive)) {
+	default:
+		if (task_dma_ok(task) == 0 || drive->using_dma == 0 ||
+		    hwif->dma_setup(drive))
+			return ide_stopped;
 		hwif->dma_exec_cmd(drive, tf->command);
 		hwif->dma_start(drive);
 		return ide_started;
 	}
-
-	return ide_stopped;
 }
 
 /*
@@ -665,7 +667,6 @@
 			}
 			/* fall through */
 		case TASKFILE_OUT:
-			args.prehandler = &pre_task_out_intr;
 			args.handler = &task_out_intr;
 			/* fall through */
 		case TASKFILE_OUT_DMAQ:
diff --git a/include/linux/ide.h b/include/linux/ide.h
index 8494475..2c28fb7 100644
--- a/include/linux/ide.h
+++ b/include/linux/ide.h
@@ -626,7 +626,6 @@
 /*
  *  internal ide interrupt handler type
  */
-typedef ide_startstop_t (ide_pre_handler_t)(ide_drive_t *, struct request *);
 typedef ide_startstop_t (ide_handler_t)(ide_drive_t *);
 typedef int (ide_expiry_t)(ide_drive_t *);
 
@@ -950,7 +949,6 @@
 	};
 	u32			tf_flags;
 	int			data_phase;
-	ide_pre_handler_t	*prehandler;
 	ide_handler_t		*handler;
 	struct request		*rq;		/* copy of request */
 	void			*special;	/* valid_t generally */
