Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f1d39b29 authored by Unicorn Chang's avatar Unicorn Chang Committed by Jeff Garzik
Browse files

[PATCH] ahci: skip protocol test altogether in spurious interrupt code



Skip protocol test altogether in spurious interrupt code. If PIOS is received
when it shouldn't, ahci will raise protocol violation.

Signed-off-by: default avatarUnicorn Chang <uchang@tw.ibm.com>
Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
parent fd60ae40
Loading
Loading
Loading
Loading
+2 −8
Original line number Diff line number Diff line
@@ -940,14 +940,8 @@ static void ahci_host_intr(struct ata_port *ap)
		return;

	/* ignore interim PIO setup fis interrupts */
	if (ata_tag_valid(ap->active_tag)) {
		struct ata_queued_cmd *qc =
			ata_qc_from_tag(ap, ap->active_tag);

		if (qc && qc->tf.protocol == ATA_PROT_PIO &&
		    (status & PORT_IRQ_PIOS_FIS))
	if (ata_tag_valid(ap->active_tag) && (status & PORT_IRQ_PIOS_FIS)) 
		return;
	}

	if (ata_ratelimit())
		ata_port_printk(ap, KERN_INFO, "spurious interrupt "