Messages in this thread | | | Date | Tue, 6 Aug 2013 15:09:46 -0700 | Subject | Re: [PATCH v4 2/4] mmc: dw_mmc: Add exynos resume_noirq callback to clear WAKEUP_INT | From | Doug Anderson <> |
| |
Tomasz,
On Tue, Aug 6, 2013 at 2:58 PM, Tomasz Figa <tomasz.figa@gmail.com> wrote: >> +static int dw_mci_exynos_resume_noirq(struct device *dev) >> +{ >> + struct dw_mci *host = dev_get_drvdata(dev); >> + u32 clksel; >> + >> + clksel = mci_readl(host, CLKSEL); >> + if (clksel & SDMMC_CLKSEL_WAKEUP_INT) >> + mci_writel(host, CLKSEL, clksel); > > What about clock gating? Will the clock used for clocking this register be > always enabled when this gets called?
Since this is just accessing and writing a register in the "Mobile Storage Host" block, I'd imagine that this should be the "biu" (bus interface unit) clock, right? The dw_mmc code grabs the biu clock at probe time and never lets it go. That means that we're OK as long as common clock framework has already restored clocks to normal operation by this time.
Do you think that common clock framework might not have put the clocks back into order by the time "noirq" callbacks are executed?
-Doug
| |