stmmac: dwmac-rk: turn exit into standard driver remove callback
authorJoachim Eastwood <manabian@gmail.com>
Sat, 5 Nov 2016 13:04:50 +0000 (14:04 +0100)
committerDavid S. Miller <davem@davemloft.net>
Wed, 9 Nov 2016 18:21:24 +0000 (13:21 -0500)
Convert the exit hook into a standard driver remove function as
the hook doesn't really buy us anything extra.

Eventually the exit hook will be deprecated in favor of the driver
remove function.

Signed-off-by: Joachim Eastwood <manabian@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c

index d91acd5..8506881 100644 (file)
@@ -908,13 +908,6 @@ static int rk_gmac_init(struct platform_device *pdev, void *priv)
        return rk_gmac_powerup(bsp_priv);
 }
 
-static void rk_gmac_exit(struct platform_device *pdev, void *priv)
-{
-       struct rk_priv_data *bsp_priv = priv;
-
-       rk_gmac_powerdown(bsp_priv);
-}
-
 static void rk_fix_speed(void *priv, unsigned int speed)
 {
        struct rk_priv_data *bsp_priv = priv;
@@ -951,7 +944,6 @@ static int rk_gmac_probe(struct platform_device *pdev)
 
        plat_dat->has_gmac = true;
        plat_dat->init = rk_gmac_init;
-       plat_dat->exit = rk_gmac_exit;
        plat_dat->fix_mac_speed = rk_fix_speed;
 
        plat_dat->bsp_priv = rk_gmac_setup(pdev, data);
@@ -965,6 +957,16 @@ static int rk_gmac_probe(struct platform_device *pdev)
        return stmmac_dvr_probe(&pdev->dev, plat_dat, &stmmac_res);
 }
 
+static int rk_gmac_remove(struct platform_device *pdev)
+{
+       struct rk_priv_data *bsp_priv = get_stmmac_bsp_priv(&pdev->dev);
+       int ret = stmmac_dvr_remove(&pdev->dev);
+
+       rk_gmac_powerdown(bsp_priv);
+
+       return ret;
+}
+
 #ifdef CONFIG_PM_SLEEP
 static int rk_gmac_suspend(struct device *dev)
 {
@@ -1008,7 +1010,7 @@ MODULE_DEVICE_TABLE(of, rk_gmac_dwmac_match);
 
 static struct platform_driver rk_gmac_dwmac_driver = {
        .probe  = rk_gmac_probe,
-       .remove = stmmac_pltfr_remove,
+       .remove = rk_gmac_remove,
        .driver = {
                .name           = "rk_gmac-dwmac",
                .pm             = &rk_gmac_pm_ops,