Browse Source

[PATCH] libata irq-pio: simplify if condition in ata_dataout_task()

- Use if (qc->tf.protocol == ATA_PROT_PIO) instead of
if(is_atapi_taskfile()) in ata_dataout_task()

Signed-off-by: Albert Lee <albertcc@tw.ibm.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Albert Lee 20 years ago
parent
commit
86a7397cda
1 changed files with 7 additions and 7 deletions
  1. 7 7
      drivers/scsi/libata-core.c

+ 7 - 7
drivers/scsi/libata-core.c

@@ -3994,13 +3994,7 @@ static void ata_dataout_task(void *_data)
 	 */
 	spin_lock_irqsave(&ap->host_set->lock, flags);
 
-	if (is_atapi_taskfile(&qc->tf)) {
-		/* send CDB */
-		atapi_send_cdb(ap, qc);
-
-		if (qc->tf.flags & ATA_TFLAG_POLLING)
-			queue_work(ata_wq, &ap->pio_task);
-	} else {
+	if (qc->tf.protocol == ATA_PROT_PIO) {
 		/* PIO data out protocol.
 		 * send first data block.
 		 */
@@ -4013,6 +4007,12 @@ static void ata_dataout_task(void *_data)
 		ata_altstatus(ap); /* flush */
 
 		/* interrupt handler takes over from here */
+	} else {
+		/* send CDB */
+		atapi_send_cdb(ap, qc);
+
+		if (qc->tf.flags & ATA_TFLAG_POLLING)
+			queue_work(ata_wq, &ap->pio_task);
 	}
 
 	spin_unlock_irqrestore(&ap->host_set->lock, flags);