Re: Question: kick SDIO irq when resume

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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


[Index of Archives]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux