On Mon, 31 Oct 2011, Jun Nie wrote: > Hi Nico, > We are debugging fake SDIO irq when 8787 SDIO card resume and > found below patch. The issue is that 8787 driver can not handle card > irq if neither 8787 nor host trigger resume event in some cases. Do > you remember what SDIO card need below patch? What's your idea on this > issue? How about add a SDIO function flag to decide the irq thread > kick off in resume? This is needed because in some cases the card interrupt is already consumed for the wake-up event. Kicking this thread shouldn't cause any issue though, as the card is just polled for the actual presence of an IRQ ... ... or maybe not. In this case commit 06e8935feb "optimized SDIO IRQ handling for single irq" may certainly cause problems. The fix here would be to clear card->sdio_single_irq before calling mmc_signal_sdio_irq() in mmc_sdio_resume() and restore its original value eventually, or better yet ignore that flag when the IRQ thread is ran for the first time after a resume. In any case you may disable that optimization in the IRQ demux handler to see if this fixes your problem. Nicolas -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html