mmc: sdhci-bcm-kona: Use sdhci_pltfm_unregister instead of open coded
authorAxel Lin <axel.lin@ingics.com>
Tue, 17 Sep 2013 07:59:32 +0000 (15:59 +0800)
committerChris Ball <cjb@laptop.org>
Thu, 26 Sep 2013 02:05:26 +0000 (22:05 -0400)
This avoid duplicated implementation and also fixes missing iounmap() and
release_mem_region() calls in sdhci_bcm_kona_remove().  sdhci_pltfm_init()
calls request_mem_region() and ioremap(), thus we need to call the
corresponding iounmap() and release_mem_region() calls in
sdhci_bcm_kona_remove().

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
drivers/mmc/host/sdhci-bcm-kona.c

index 85472d3fd37f76b7a4b24b4a6f42033ff9dec472..7a190fe4dff1b799958bfedf7bb01dd5d405a0f8 100644 (file)
@@ -316,19 +316,7 @@ err_pltfm_free:
 
 static int __exit sdhci_bcm_kona_remove(struct platform_device *pdev)
 {
-       struct sdhci_host *host = platform_get_drvdata(pdev);
-       int dead;
-       u32 scratch;
-
-       dead = 0;
-       scratch = readl(host->ioaddr + SDHCI_INT_STATUS);
-       if (scratch == (u32)-1)
-               dead = 1;
-       sdhci_remove_host(host, dead);
-
-       sdhci_free_host(host);
-
-       return 0;
+       return sdhci_pltfm_unregister(pdev);
 }
 
 static struct platform_driver sdhci_bcm_kona_driver = {