aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ata/libata-sff.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/ata/libata-sff.c')
-rw-r--r--drivers/ata/libata-sff.c10
1 files changed, 2 insertions, 8 deletions
diff --git a/drivers/ata/libata-sff.c b/drivers/ata/libata-sff.c
index d5dd88d6dea0..0e2c972292cf 100644
--- a/drivers/ata/libata-sff.c
+++ b/drivers/ata/libata-sff.c
@@ -1807,9 +1807,6 @@ retry:
1807 struct ata_port *ap = host->ports[i]; 1807 struct ata_port *ap = host->ports[i];
1808 struct ata_queued_cmd *qc; 1808 struct ata_queued_cmd *qc;
1809 1809
1810 if (unlikely(ap->flags & ATA_FLAG_DISABLED))
1811 continue;
1812
1813 qc = ata_qc_from_tag(ap, ap->link.active_tag); 1810 qc = ata_qc_from_tag(ap, ap->link.active_tag);
1814 if (qc) { 1811 if (qc) {
1815 if (!(qc->tf.flags & ATA_TFLAG_POLLING)) 1812 if (!(qc->tf.flags & ATA_TFLAG_POLLING))
@@ -1884,11 +1881,8 @@ void ata_sff_lost_interrupt(struct ata_port *ap)
1884 1881
1885 /* Only one outstanding command per SFF channel */ 1882 /* Only one outstanding command per SFF channel */
1886 qc = ata_qc_from_tag(ap, ap->link.active_tag); 1883 qc = ata_qc_from_tag(ap, ap->link.active_tag);
1887 /* Check we have a live one.. */ 1884 /* We cannot lose an interrupt on a non-existent or polled command */
1888 if (qc == NULL || !(qc->flags & ATA_QCFLAG_ACTIVE)) 1885 if (!qc || qc->tf.flags & ATA_TFLAG_POLLING)
1889 return;
1890 /* We cannot lose an interrupt on a polled command */
1891 if (qc->tf.flags & ATA_TFLAG_POLLING)
1892 return; 1886 return;
1893 /* See if the controller thinks it is still busy - if so the command 1887 /* See if the controller thinks it is still busy - if so the command
1894 isn't a lost IRQ but is still in progress */ 1888 isn't a lost IRQ but is still in progress */