diff options
Diffstat (limited to 'drivers/ata/pata_octeon_cf.c')
-rw-r--r-- | drivers/ata/pata_octeon_cf.c | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/drivers/ata/pata_octeon_cf.c b/drivers/ata/pata_octeon_cf.c index 005a44483a7b..3001109352ea 100644 --- a/drivers/ata/pata_octeon_cf.c +++ b/drivers/ata/pata_octeon_cf.c | |||
@@ -489,9 +489,8 @@ static void octeon_cf_exec_command16(struct ata_port *ap, | |||
489 | ata_wait_idle(ap); | 489 | ata_wait_idle(ap); |
490 | } | 490 | } |
491 | 491 | ||
492 | static u8 octeon_cf_irq_on(struct ata_port *ap) | 492 | static void octeon_cf_irq_on(struct ata_port *ap) |
493 | { | 493 | { |
494 | return 0; | ||
495 | } | 494 | } |
496 | 495 | ||
497 | static void octeon_cf_irq_clear(struct ata_port *ap) | 496 | static void octeon_cf_irq_clear(struct ata_port *ap) |
@@ -655,9 +654,6 @@ static irqreturn_t octeon_cf_interrupt(int irq, void *dev_instance) | |||
655 | ap = host->ports[i]; | 654 | ap = host->ports[i]; |
656 | ocd = ap->dev->platform_data; | 655 | ocd = ap->dev->platform_data; |
657 | 656 | ||
658 | if (ap->flags & ATA_FLAG_DISABLED) | ||
659 | continue; | ||
660 | |||
661 | ocd = ap->dev->platform_data; | 657 | ocd = ap->dev->platform_data; |
662 | cf_port = ap->private_data; | 658 | cf_port = ap->private_data; |
663 | dma_int.u64 = | 659 | dma_int.u64 = |
@@ -667,8 +663,7 @@ static irqreturn_t octeon_cf_interrupt(int irq, void *dev_instance) | |||
667 | 663 | ||
668 | qc = ata_qc_from_tag(ap, ap->link.active_tag); | 664 | qc = ata_qc_from_tag(ap, ap->link.active_tag); |
669 | 665 | ||
670 | if (qc && (!(qc->tf.flags & ATA_TFLAG_POLLING)) && | 666 | if (qc && !(qc->tf.flags & ATA_TFLAG_POLLING)) { |
671 | (qc->flags & ATA_QCFLAG_ACTIVE)) { | ||
672 | if (dma_int.s.done && !dma_cfg.s.en) { | 667 | if (dma_int.s.done && !dma_cfg.s.en) { |
673 | if (!sg_is_last(qc->cursg)) { | 668 | if (!sg_is_last(qc->cursg)) { |
674 | qc->cursg = sg_next(qc->cursg); | 669 | qc->cursg = sg_next(qc->cursg); |
@@ -738,8 +733,7 @@ static void octeon_cf_delayed_finish(struct work_struct *work) | |||
738 | goto out; | 733 | goto out; |
739 | } | 734 | } |
740 | qc = ata_qc_from_tag(ap, ap->link.active_tag); | 735 | qc = ata_qc_from_tag(ap, ap->link.active_tag); |
741 | if (qc && (!(qc->tf.flags & ATA_TFLAG_POLLING)) && | 736 | if (qc && !(qc->tf.flags & ATA_TFLAG_POLLING)) |
742 | (qc->flags & ATA_QCFLAG_ACTIVE)) | ||
743 | octeon_cf_dma_finished(ap, qc); | 737 | octeon_cf_dma_finished(ap, qc); |
744 | out: | 738 | out: |
745 | spin_unlock_irqrestore(&host->lock, flags); | 739 | spin_unlock_irqrestore(&host->lock, flags); |