nvmem: vf610-ocotp: Convert to use devm_nvmem_register()
authorAndrey Smirnov <andrew.smirnov@gmail.com>
Fri, 9 Mar 2018 14:46:58 +0000 (14:46 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 14 Mar 2018 18:28:13 +0000 (19:28 +0100)
Drop all of the code related to .remove hook and make use of
devm_nvmem_register() instead.

Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Cc: Heiko Stuebner <heiko@sntech.de>
Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: Carlo Caione <carlo@caione.org>
Cc: Kevin Hilman <khilman@baylibre.com>
Cc: Matthias Brugger <matthias.bgg@gmail.com>
Cc: cphealy@gmail.com
Cc: linux-kernel@vger.kernel.org
Cc: linux-mediatek@lists.infradead.org
Cc: linux-rockchip@lists.infradead.org
Cc: linux-amlogic@lists.infradead.org
Cc: linux-arm-kernel@lists.infradead.org
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/nvmem/vf610-ocotp.c

index 5ae9e00..5a395ff 100644 (file)
@@ -217,13 +217,6 @@ static const struct of_device_id ocotp_of_match[] = {
 };
 MODULE_DEVICE_TABLE(of, ocotp_of_match);
 
-static int vf610_ocotp_remove(struct platform_device *pdev)
-{
-       struct vf610_ocotp *ocotp_dev = platform_get_drvdata(pdev);
-
-       return nvmem_unregister(ocotp_dev->nvmem);
-}
-
 static int vf610_ocotp_probe(struct platform_device *pdev)
 {
        struct device *dev = &pdev->dev;
@@ -246,26 +239,20 @@ static int vf610_ocotp_probe(struct platform_device *pdev)
                        PTR_ERR(ocotp_dev->clk));
                return PTR_ERR(ocotp_dev->clk);
        }
+       ocotp_dev->dev = dev;
+       ocotp_dev->timing = vf610_ocotp_calculate_timing(ocotp_dev);
 
        ocotp_config.size = resource_size(res);
        ocotp_config.priv = ocotp_dev;
        ocotp_config.dev = dev;
 
-       ocotp_dev->nvmem = nvmem_register(&ocotp_config);
-       if (IS_ERR(ocotp_dev->nvmem))
-               return PTR_ERR(ocotp_dev->nvmem);
+       ocotp_dev->nvmem = devm_nvmem_register(dev, &ocotp_config);
 
-       ocotp_dev->dev = dev;
-       platform_set_drvdata(pdev, ocotp_dev);
-
-       ocotp_dev->timing = vf610_ocotp_calculate_timing(ocotp_dev);
-
-       return 0;
+       return PTR_ERR_OR_ZERO(ocotp_dev->nvmem);
 }
 
 static struct platform_driver vf610_ocotp_driver = {
        .probe = vf610_ocotp_probe,
-       .remove = vf610_ocotp_remove,
        .driver = {
                .name = "vf610-ocotp",
                .of_match_table = ocotp_of_match,