On Jul 9, 2013, at 4:44 PM, Jeremie Samuel <jeremie.samuel.ext@xxxxxxxxxx> wrote: > Hi all, > > Currently the sdhci driver does everything in the atomic context. > And what is worse, PIO transfers are made from the IRQ handler. > > Some patches were already submitted to solve this issue. But there were > rejected because they involved new issues. > > This set of patches is an evolution of an old patch from Anton Vorontsov. > I tried to fix all the problems involved by the patches. I tested it for > several time now with SD cards and SDIO. > > So, this patch set reworks sdhci code to avoid atomic context, > almost completely. > > Thanks, > Running DDR50, SDR104 or HS200 what is the performance impact ? > Jeremie Samuel > > Jeremie Samuel (8): > sdhci: Turn timeout timer into delayed work > sdhci: Turn tuning timeout timer into delayed work > sdhci: Use work structs instead of tasklets > sdhci: Use threaded IRQ handler > sdhci: Delay led blinking > sdhci: Turn host->lock into a mutex > sdhci: Get rid of mdelay()s where it is safe and makes sense > sdhci: Use jiffies instead of a timeout counter > > drivers/mmc/host/sdhci.c | 327 ++++++++++++++++++++++----------------------- > include/linux/mmc/sdhci.h | 13 +- > 2 files changed, 168 insertions(+), 172 deletions(-) > > -- > 1.7.10.4 > > -- > 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 -- 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