diff options
author | Guennadi Liakhovetski <g.liakhovetski@gmx.de> | 2011-05-27 10:54:05 -0400 |
---|---|---|
committer | Chris Ball <cjb@laptop.org> | 2011-06-18 22:18:06 -0400 |
commit | 742a0c7cae9bd0f913c71722289b8ec862d70a2b (patch) | |
tree | 7cb32b3d9a6fb344fa2261688fd061dd3474d80e /drivers/mmc/host/sh_mobile_sdhi.c | |
parent | b9c350a0a9d3564d20f5301f472b8841f8934c7d (diff) |
mmc: sdhi: fix module unloading
MMC host drivers must be able to process interrupts during
mmc_remove_host().
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Chris Ball <cjb@laptop.org>
Diffstat (limited to 'drivers/mmc/host/sh_mobile_sdhi.c')
-rw-r--r-- | drivers/mmc/host/sh_mobile_sdhi.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/mmc/host/sh_mobile_sdhi.c b/drivers/mmc/host/sh_mobile_sdhi.c index b3654293017b..2353bb797d6c 100644 --- a/drivers/mmc/host/sh_mobile_sdhi.c +++ b/drivers/mmc/host/sh_mobile_sdhi.c | |||
@@ -165,13 +165,14 @@ static int sh_mobile_sdhi_remove(struct platform_device *pdev) | |||
165 | 165 | ||
166 | p->pdata = NULL; | 166 | p->pdata = NULL; |
167 | 167 | ||
168 | tmio_mmc_host_remove(host); | ||
169 | |||
168 | for (i = 0; i < 3; i++) { | 170 | for (i = 0; i < 3; i++) { |
169 | irq = platform_get_irq(pdev, i); | 171 | irq = platform_get_irq(pdev, i); |
170 | if (irq >= 0) | 172 | if (irq >= 0) |
171 | free_irq(irq, host); | 173 | free_irq(irq, host); |
172 | } | 174 | } |
173 | 175 | ||
174 | tmio_mmc_host_remove(host); | ||
175 | clk_disable(priv->clk); | 176 | clk_disable(priv->clk); |
176 | clk_put(priv->clk); | 177 | clk_put(priv->clk); |
177 | kfree(priv); | 178 | kfree(priv); |