On Sat, Jun 07, 2014 at 02:58:54AM +0530, Suman Tripathi wrote:
> @@ -5072,6 +5072,16 @@ int ata_qc_complete_multiple(struct ata_port *ap, u32
> qc_active)
> if (qc) {
> ata_qc_complete(qc);
> nr_done++;
> + /*
> + * Some controller unable to clear the BSY bit after
> + * receiving the PIO Setup FIS from device resulting
> + * the DMA state to go into CMFatalErrorUpdate state.
> + * So need to restart the dma engine to get the
> + * controller out of this state.
> + */
> + if ((ap->flags & ATA_HORKAGE_BROKEN_PIO_CMD) &&
> + (qc->tf.protocol == ATA_PROT_PIO))
> + ap->ops->restart_engine(ap);
Why aren't you doing this by wrapping irq handler?
Thanks.
--
tejun
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html