On Wed, Oct 6, 2010 at 6:45 AM, Mike Rapoport <mike@xxxxxxxxxxxxxx> wrote: > Hi Steve, > Steve Sakoman wrote: >> >> On Tue, Oct 5, 2010 at 11:17 PM, Mike Rapoport <mike@xxxxxxxxxxxxxx> >> wrote: >> >>> I've tried to update the patches on top of 2.6.36-rc3 and I've got stuck. >>> The changes Adrian has made to the interrupt synchronization affect the >>> way >>> the >>> SDIO irq should be implemented and I haven't found a way to resolve it >>> :-( >> >> I tried my hand at making the patch apply on 2.6.35: >> >> >> http://www.sakoman.com/cgi-bin/gitweb.cgi?p=linux-omap-2.6.git;a=commitdiff;h=51b802d73191c306618cddefbd63379c839589f5 > > This one fails to build: > > CC drivers/mmc/host/omap_hsmmc.o > drivers/mmc/host/omap_hsmmc.c: In function 'omap_hsmmc_start_command': > drivers/mmc/host/omap_hsmmc.c:791: warning: unused variable 'int_en_mask' > drivers/mmc/host/omap_hsmmc.c: In function 'omap_hsmmc_do_irq': > drivers/mmc/host/omap_hsmmc.c:1023: error: label 'out' used but not defined > drivers/mmc/host/omap_hsmmc.c: In function 'omap_hsmmc_irq': > drivers/mmc/host/omap_hsmmc.c:1101: warning: label 'out' defined but not > used > drivers/mmc/host/omap_hsmmc.c: In function 'omap_hsmmc_suspend': > drivers/mmc/host/omap_hsmmc.c:2346: warning: unused variable 'state' > make[4]: *** [drivers/mmc/host/omap_hsmmc.o] Error 1 > > Moving the 'out' label where I believe it should live I get: > libertas_sdio: Libertas SDIO driver > libertas_sdio: Copyright Pierre Ossman > libertas: command 0x0003 timed out > libertas: Timeout submitting command 0x0003 > libertas: PREP_CMD: command 0x0003 failed: -110 > libertas_sdio: probe of mmc1:0001:1 failed with error -110 > >> >> It seems to work, but I'm pretty sure I must have messed something up >> because I get error messages every once in a while: >> >> libertas: tx watch dog timeout >> >> I don't recall seeing these with the original version of the patch :-( >> >> Suggestions as to where I went wrong are welcome! > > I've "applied" the patch almost the same way you did and I was not able to > get any further than the point above (command 0x0003 timed out). As far as I > understand, what we have now is that omap_hsmmc_request_done() calls > omap_hsmmc_disable_irq() and the interrupts that come from the 8686 > _between_ requests are simply missed. Whatever I've tried to keep the SDIO > interrupts on didn't help... :( You are correct! The version of the patch in the repo indeed has 'out' in the wrong place and generates a compile error. Could you post the patch you are using and I will try to reproduce what you are seeing on my hardware? Best we all work from exactly the same patch! Steve -- 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