]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/mmc/host/pxamci.c
[ARM] pxamci: call mmc_remove_host() before freeing resources
[karo-tx-linux.git] / drivers / mmc / host / pxamci.c
index b00d6731905826864abf43a762910899087a3887..9fb480bb0e0a8cca4398941ad4ad483b47dc4887 100644 (file)
@@ -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,