Home
last modified time | relevance | path

Searched hist:"61840 edc88138cb7e274ac530aeec6de36fbf386" (Results 1 – 1 of 1) sorted by relevance

/linux/drivers/mmc/host/
H A Ddw_mmc.cdiff 61840edc88138cb7e274ac530aeec6de36fbf386 Wed Oct 20 12:29:07 CEST 2021 Ulf Hansson <ulf.hansson@linaro.org> mmc: dw_mmc: Drop use of ->init_card() callback

For dw_mmc, the ->init_card() callback is being used to turn on/off
automatic internal clock gating for powersave, which is needed to properly
support SDIO irqs on DAT1.

However, using the ->init_card() comes with a drawback in this case, as it
means that the powersave feature becomes disabled, no matter whether the
SDIO irqs becomes turned on or not. To improve the behaviour, let's change
into using the ->enable_sdio_irq() callback instead. This works fine,
because dw_mmc uses sdio_signal_irq() to signal the irqs, thus the
->enable_sdio_irq() is never executed from within atomic context.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Link: https://lore.kernel.org/r/20211020102907.70195-1-ulf.hansson@linaro.org
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>