aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/sata_sil24.c
diff options
context:
space:
mode:
authorTejun Heo <htejun@gmail.com>2006-05-15 07:57:42 -0400
committerTejun Heo <htejun@gmail.com>2006-05-15 07:57:42 -0400
commitce5f7f3d0cab82d6c16fcb64def8bfc0a3a85dd6 (patch)
tree35a8af3090fef05001f931fee0c5e374433f5458 /drivers/scsi/sata_sil24.c
parente61e067227bc76b4d9411a50d735c9d87f27b0e2 (diff)
[PATCH] sata_sil24: update TF image only when necessary
Update TF image (pp->tf) only when necessary. Signed-off-by: Tejun Heo <htejun@gmail.com>
Diffstat (limited to 'drivers/scsi/sata_sil24.c')
-rw-r--r--drivers/scsi/sata_sil24.c12
1 files changed, 2 insertions, 10 deletions
diff --git a/drivers/scsi/sata_sil24.c b/drivers/scsi/sata_sil24.c
index 8c167250f4c9..45b9e37c191e 100644
--- a/drivers/scsi/sata_sil24.c
+++ b/drivers/scsi/sata_sil24.c
@@ -799,17 +799,9 @@ static inline void sil24_host_intr(struct ata_port *ap)
799 if (ap->flags & SIL24_FLAG_PCIX_IRQ_WOC) 799 if (ap->flags & SIL24_FLAG_PCIX_IRQ_WOC)
800 writel(PORT_IRQ_COMPLETE, port + PORT_IRQ_STAT); 800 writel(PORT_IRQ_COMPLETE, port + PORT_IRQ_STAT);
801 801
802 /*
803 * !HOST_SSAT_ATTN guarantees successful completion,
804 * so reading back tf registers is unnecessary for
805 * most commands. TODO: read tf registers for
806 * commands which require these values on successful
807 * completion (EXECUTE DEVICE DIAGNOSTIC, CHECK POWER,
808 * DEVICE RESET and READ PORT MULTIPLIER (any more?).
809 */
810 sil24_update_tf(ap);
811
812 if (qc) { 802 if (qc) {
803 if (qc->flags & ATA_QCFLAG_RESULT_TF)
804 sil24_update_tf(ap);
813 qc->err_mask |= ac_err_mask(pp->tf.command); 805 qc->err_mask |= ac_err_mask(pp->tf.command);
814 ata_qc_complete(qc); 806 ata_qc_complete(qc);
815 } 807 }