On Wednesday 14 March 2007, Tejun Heo wrote: > Several people have reported LITE-ON LTR-48246S detection failed > because SETXFER fails. It seems the device raises IRQ too early after > SETXFER. This is controller independent. The same problem has been > reported for different controllers. > > So, now we have pata_via where the controller raises IRQ before it's > ready after SETXFER and a device which does similar thing. This patch > makes libata always execute SETXFER via polling. As this only happens > during EH, performance impact is nil. Setting ATA_TFLAG_POLLING is > also moved from issue hot path to ata_dev_set_xfermode() - the only > place where SETXFER can be issued. > > Jeff Garzik suggests that, in the long term, it might be better to > modify libata HSM implementation such that we're more tolerant of > erratic ATAPI IRQ behavior - e.g. default to IRQ but falling back to > polling if the device doesn't seem ready at the point of interrupt. > Such change might be necessary to support ancient/weird ATAPI devices. > > Signed-off-by: Tejun Heo <htejun@xxxxxxxxx> Acked-by: Bartlomiej Zolnierkiewicz <bzolnier@xxxxxxxxx> - To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html