diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-12-02 19:21:58 +0300 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-12-02 19:21:58 +0300 |
commit | 6f9a76198f50c4dfe36c5be4081b72872cd644fe (patch) | |
tree | 07da6f48279992bfa4af4cf54c10de6b11d084e7 | |
parent | e9438e3193a0d1430b70fafe46855c1a56202f7c (diff) | |
parent | 5d6b1edf8ccc4b7e4e77dff3fc80882833d6186e (diff) | |
download | linux-6f9a76198f50c4dfe36c5be4081b72872cd644fe.tar.xz |
Merge branch 'fix' of git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6
* 'fix' of git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6:
[ARM] pxamci: call mmc_remove_host() before freeing resources
-rw-r--r-- | drivers/mmc/host/pxamci.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/mmc/host/pxamci.c b/drivers/mmc/host/pxamci.c index b00d67319058..9fb480bb0e0a 100644 --- a/drivers/mmc/host/pxamci.c +++ b/drivers/mmc/host/pxamci.c @@ -760,6 +760,8 @@ static int pxamci_remove(struct platform_device *pdev) if (mmc) { struct pxamci_host *host = mmc_priv(mmc); + mmc_remove_host(mmc); + if (host->pdata) { gpio_cd = host->pdata->gpio_card_detect; gpio_ro = host->pdata->gpio_card_ro; @@ -779,8 +781,6 @@ static int pxamci_remove(struct platform_device *pdev) if (host->pdata && host->pdata->exit) host->pdata->exit(&pdev->dev, mmc); - mmc_remove_host(mmc); - pxamci_stop_clock(host); writel(TXFIFO_WR_REQ|RXFIFO_RD_REQ|CLK_IS_OFF|STOP_CMD| END_CMD_RES|PRG_DONE|DATA_TRAN_DONE, |