summaryrefslogtreecommitdiffstats
path: root/drivers/mmc/host
diff options
context:
space:
mode:
authorVenkatraman S <svenkatr@ti.com>2012-05-08 13:35:34 +0200
committerChris Ball <cjb@laptop.org>2012-05-17 14:26:15 +0200
commitb6e0703bbf0121cd6440277a0604d860f5734b2c (patch)
tree8979cf5f0e0c1b9670eb1d7d9960072c32364ef6 /drivers/mmc/host
parentmmc: omap: convert to per instance workqueue (diff)
downloadlinux-b6e0703bbf0121cd6440277a0604d860f5734b2c.tar.xz
linux-b6e0703bbf0121cd6440277a0604d860f5734b2c.zip
mmc: omap: make it behave well as a module
Use proper __devinit and __devexit annotation for driver functions. Instantiate the probe function for driver_ops instead of a probe in the register function. Signed-off-by: Venkatraman S <svenkatr@ti.com> Acked-by: Balaji T K <balajitk@ti.com> Signed-off-by: Chris Ball <cjb@laptop.org>
Diffstat (limited to 'drivers/mmc/host')
-rw-r--r--drivers/mmc/host/omap.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/mmc/host/omap.c b/drivers/mmc/host/omap.c
index 2d7628eee3d3..0056bd8acc83 100644
--- a/drivers/mmc/host/omap.c
+++ b/drivers/mmc/host/omap.c
@@ -1395,7 +1395,7 @@ static void mmc_omap_remove_slot(struct mmc_omap_slot *slot)
mmc_free_host(mmc);
}
-static int __init mmc_omap_probe(struct platform_device *pdev)
+static int __devinit mmc_omap_probe(struct platform_device *pdev)
{
struct omap_mmc_platform_data *pdata = pdev->dev.platform_data;
struct mmc_omap_host *host = NULL;
@@ -1522,7 +1522,7 @@ err_free_mem_region:
return ret;
}
-static int mmc_omap_remove(struct platform_device *pdev)
+static int __devexit mmc_omap_remove(struct platform_device *pdev)
{
struct mmc_omap_host *host = platform_get_drvdata(pdev);
int i;
@@ -1604,7 +1604,8 @@ static int mmc_omap_resume(struct platform_device *pdev)
#endif
static struct platform_driver mmc_omap_driver = {
- .remove = mmc_omap_remove,
+ .probe = mmc_omap_probe,
+ .remove = __devexit_p(mmc_omap_remove),
.suspend = mmc_omap_suspend,
.resume = mmc_omap_resume,
.driver = {
@@ -1615,7 +1616,7 @@ static struct platform_driver mmc_omap_driver = {
static int __init mmc_omap_init(void)
{
- return platform_driver_probe(&mmc_omap_driver, mmc_omap_probe);
+ return platform_driver_register(&mmc_omap_driver);
}
static void __exit mmc_omap_exit(void)