From: Andrey Smirnov <andrew.smirnov@xxxxxxxxx> Drop all of the code related to .remove hook and make use of devm_nvmem_register() instead. Cc: Srinivas Kandagatla <srinivas.kandagatla at linaro.org> Cc: Heiko Stuebner <heiko at sntech.de> Cc: Masahiro Yamada <yamada.masahiro at socionext.com> Cc: Carlo Caione <carlo at caione.org> Cc: Kevin Hilman <khilman at baylibre.com> Cc: Matthias Brugger <matthias.bgg at gmail.com> Cc: cphealy at gmail.com Cc: linux-kernel at vger.kernel.org Cc: linux-mediatek at lists.infradead.org Cc: linux-rockchip at lists.infradead.org Cc: linux-amlogic at lists.infradead.org Cc: linux-arm-kernel at lists.infradead.org Signed-off-by: Andrey Smirnov <andrew.smirnov at gmail.com> Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla at linaro.org> --- drivers/nvmem/qfprom.c | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/drivers/nvmem/qfprom.c b/drivers/nvmem/qfprom.c index cb3b48b47d64..4f650baad983 100644 --- a/drivers/nvmem/qfprom.c +++ b/drivers/nvmem/qfprom.c @@ -47,13 +47,6 @@ static int qfprom_reg_write(void *context, return 0; } -static int qfprom_remove(struct platform_device *pdev) -{ - struct nvmem_device *nvmem = platform_get_drvdata(pdev); - - return nvmem_unregister(nvmem); -} - static struct nvmem_config econfig = { .name = "qfprom", .stride = 1, @@ -82,13 +75,9 @@ static int qfprom_probe(struct platform_device *pdev) econfig.dev = dev; econfig.priv = priv; - nvmem = nvmem_register(&econfig); - if (IS_ERR(nvmem)) - return PTR_ERR(nvmem); - - platform_set_drvdata(pdev, nvmem); + nvmem = devm_nvmem_register(dev, &econfig); - return 0; + return PTR_ERR_OR_ZERO(nvmem); } static const struct of_device_id qfprom_of_match[] = { @@ -99,7 +88,6 @@ MODULE_DEVICE_TABLE(of, qfprom_of_match); static struct platform_driver qfprom_driver = { .probe = qfprom_probe, - .remove = qfprom_remove, .driver = { .name = "qcom,qfprom", .of_match_table = qfprom_of_match, -- 2.15.1