Thread (28 messages) 28 messages, 6 authors, 2013-08-21

[PATCH v4 2/4] mmc: dw_mmc: Add exynos resume_noirq callback to clear WAKEUP_INT

From: dianders@chromium.org (Doug Anderson)
Date: 2013-08-06 22:09:49
Also in: linux-mmc, linux-samsung-soc, lkml

Tomasz,

On Tue, Aug 6, 2013 at 2:58 PM, Tomasz Figa [off-list ref] wrote:
quoted
+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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help