rtc: add devm_ prefix to rtc_nvmem_register()
authorBartosz Golaszewski <bgolaszewski@baylibre.com>
Mon, 9 Nov 2020 16:34:06 +0000 (17:34 +0100)
committerAlexandre Belloni <alexandre.belloni@bootlin.com>
Thu, 19 Nov 2020 11:50:11 +0000 (12:50 +0100)
rtc_nvmem_register() is a managed interface. It doesn't require any
release function to be called at driver detach. To avoid confusing
driver authors, let's rename it to devm_rtc_nvmem_register() and add it
to the list of managed interfaces in Documentation/.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Link: https://lore.kernel.org/r/20201109163409.24301-6-brgl@bgdev.pl
29 files changed:
Documentation/driver-api/driver-model/devres.rst
drivers/rtc/nvmem.c
drivers/rtc/rtc-cmos.c
drivers/rtc/rtc-ds1305.c
drivers/rtc/rtc-ds1307.c
drivers/rtc/rtc-ds1343.c
drivers/rtc/rtc-ds1511.c
drivers/rtc/rtc-ds1553.c
drivers/rtc/rtc-ds1685.c
drivers/rtc/rtc-ds1742.c
drivers/rtc/rtc-ds3232.c
drivers/rtc/rtc-isl12026.c
drivers/rtc/rtc-isl1208.c
drivers/rtc/rtc-m48t59.c
drivers/rtc/rtc-m48t86.c
drivers/rtc/rtc-meson.c
drivers/rtc/rtc-omap.c
drivers/rtc/rtc-pcf2127.c
drivers/rtc/rtc-pcf85063.c
drivers/rtc/rtc-pcf85363.c
drivers/rtc/rtc-rp5c01.c
drivers/rtc/rtc-rv3028.c
drivers/rtc/rtc-rv3029c2.c
drivers/rtc/rtc-rv3032.c
drivers/rtc/rtc-rv8803.c
drivers/rtc/rtc-rx8581.c
drivers/rtc/rtc-stk17ta8.c
drivers/rtc/rtc-tx4939.c
include/linux/rtc.h

index 6ffc0f07404f579d10c45eeae026127a8bdbdaaa..5df7ba54a4ba5142de97f9ceb3eef14ad2069917 100644 (file)
@@ -414,6 +414,7 @@ RESET
 RTC
   devm_rtc_device_register()
   devm_rtc_allocate_device()
+  devm_rtc_nvmem_register()
 
 SERDEV
   devm_serdev_device_open()
index 5e0b178a3b65fe241522bbb902730eff7e4ea985..7502deb6390e32ba819d46587489cc7e2527d1e5 100644 (file)
@@ -10,7 +10,7 @@
 #include <linux/nvmem-consumer.h>
 #include <linux/rtc.h>
 
-int rtc_nvmem_register(struct rtc_device *rtc,
+int devm_rtc_nvmem_register(struct rtc_device *rtc,
                       struct nvmem_config *nvmem_config)
 {
        struct nvmem_device *nvmem;
@@ -24,4 +24,4 @@ int rtc_nvmem_register(struct rtc_device *rtc,
 
        return PTR_ERR_OR_ZERO(nvmem);
 }
-EXPORT_SYMBOL_GPL(rtc_nvmem_register);
+EXPORT_SYMBOL_GPL(devm_rtc_nvmem_register);
index adca0de76e536b3ab47997ddacc415d8dd2d096c..eea91c1538aa3f3241dca1f98780a85f65c9880e 100644 (file)
@@ -869,7 +869,7 @@ cmos_do_probe(struct device *dev, struct resource *ports, int rtc_irq)
 
        /* export at least the first block of NVRAM */
        nvmem_cfg.size = address_space - NVRAM_OFFSET;
-       if (rtc_nvmem_register(cmos_rtc.rtc, &nvmem_cfg))
+       if (devm_rtc_nvmem_register(cmos_rtc.rtc, &nvmem_cfg))
                dev_err(dev, "nvmem registration failed\n");
 
        dev_info(dev, "%s%s, %d bytes nvram%s\n",
index a1ed539d41b49f8ce534f3b825d4785169dd76e5..a4e768261b4318c81d5827a9df65fd4aaaa836f4 100644 (file)
@@ -698,7 +698,7 @@ static int ds1305_probe(struct spi_device *spi)
        if (status)
                return status;
 
-       rtc_nvmem_register(ds1305->rtc, &ds1305_nvmem_cfg);
+       devm_rtc_nvmem_register(ds1305->rtc, &ds1305_nvmem_cfg);
 
        /* Maybe set up alarm IRQ; be ready to handle it triggering right
         * away.  NOTE that we don't share this.  The signal is active low,
index e359cbf7882b1f8d25162a663616e51778903d6c..216bc5d9b716e3bf42c5062f4225de73b5564570 100644 (file)
@@ -2016,7 +2016,7 @@ static int ds1307_probe(struct i2c_client *client,
                        .priv = ds1307,
                };
 
-               rtc_nvmem_register(ds1307->rtc, &nvmem_cfg);
+               devm_rtc_nvmem_register(ds1307->rtc, &nvmem_cfg);
        }
 
        ds1307_hwmon_register(ds1307);
index e7604e844cbdc1851228325fb8ef2e37ded3a9f4..ea663e24a34c4db38033bbcf0d6ba74cda0a6a68 100644 (file)
@@ -413,7 +413,7 @@ static int ds1343_probe(struct spi_device *spi)
                return res;
 
        nvmem_cfg.priv = priv;
-       rtc_nvmem_register(priv->rtc, &nvmem_cfg);
+       devm_rtc_nvmem_register(priv->rtc, &nvmem_cfg);
 
        priv->irq = spi->irq;
 
index 33c483d759c81f2582b29325c6e08e70b5910f55..d5f48216e851d86bd2d1951453134a5729696bee 100644 (file)
@@ -470,7 +470,7 @@ static int ds1511_rtc_probe(struct platform_device *pdev)
        if (ret)
                return ret;
 
-       rtc_nvmem_register(pdata->rtc, &ds1511_nvmem_cfg);
+       devm_rtc_nvmem_register(pdata->rtc, &ds1511_nvmem_cfg);
 
        /*
         * if the platform has an interrupt in mind for this device,
index c6a5563504e558b43d96549f3340e0fa8740e4b5..2d2eb739d92b4bb9053b1e03a254e8ba710cf600 100644 (file)
@@ -309,7 +309,7 @@ static int ds1553_rtc_probe(struct platform_device *pdev)
                }
        }
 
-       if (rtc_nvmem_register(pdata->rtc, &nvmem_cfg))
+       if (devm_rtc_nvmem_register(pdata->rtc, &nvmem_cfg))
                dev_err(&pdev->dev, "unable to register nvmem\n");
 
        return 0;
index 9043c96e884588924ca851152165fec3119d56ab..bef588fce26602fdab6d8a8b822e10af4bbb9429 100644 (file)
@@ -1317,7 +1317,7 @@ ds1685_rtc_probe(struct platform_device *pdev)
                return ret;
 
        nvmem_cfg.priv = rtc;
-       ret = rtc_nvmem_register(rtc_dev, &nvmem_cfg);
+       ret = devm_rtc_nvmem_register(rtc_dev, &nvmem_cfg);
        if (ret)
                return ret;
 
index 291bbed90ef854a009b64a5ee40a39fe1f98fda5..29792a8cce978bdd0500b2ef53642cb6f72f6205 100644 (file)
@@ -195,7 +195,7 @@ static int ds1742_rtc_probe(struct platform_device *pdev)
        if (ret)
                return ret;
 
-       if (rtc_nvmem_register(rtc, &nvmem_cfg))
+       if (devm_rtc_nvmem_register(rtc, &nvmem_cfg))
                dev_err(&pdev->dev, "Unable to register nvmem\n");
 
        return 0;
index 69c37ab6435202889297805359c09854c948a58e..16b89035d1350255109990c3567f222ed1fde54f 100644 (file)
@@ -518,7 +518,7 @@ static int ds3232_probe(struct device *dev, struct regmap *regmap, int irq,
        if (IS_ERR(ds3232->rtc))
                return PTR_ERR(ds3232->rtc);
 
-       ret = rtc_nvmem_register(ds3232->rtc, &nvmem_cfg);
+       ret = devm_rtc_nvmem_register(ds3232->rtc, &nvmem_cfg);
        if(ret)
                return ret;
 
index 5b6b17fb6d6281466488936e246d1d58cff19105..fff8d8253669824ff4215c584509a4fe4654028e 100644 (file)
@@ -465,7 +465,7 @@ static int isl12026_probe_new(struct i2c_client *client)
 
        priv->rtc->ops = &isl12026_rtc_ops;
        nvm_cfg.priv = priv;
-       ret = rtc_nvmem_register(priv->rtc, &nvm_cfg);
+       ret = devm_rtc_nvmem_register(priv->rtc, &nvm_cfg);
        if (ret)
                return ret;
 
index ebb691fa48a6b46ba5138e34fbe831c79273bd13..08d778b10e9ecc8c50bac823b96e1f0b9692c1c5 100644 (file)
@@ -890,7 +890,7 @@ isl1208_probe(struct i2c_client *client, const struct i2c_device_id *id)
        if (rc)
                return rc;
 
-       rc = rtc_nvmem_register(isl1208->rtc, &isl1208->nvmem_config);
+       rc = devm_rtc_nvmem_register(isl1208->rtc, &isl1208->nvmem_config);
        if (rc)
                return rc;
 
index ee1d8f0146fd14b7d863d2e0f08d2e573125db9e..e966a66ab2d35266eb24c6f9b8bb83333da24c9e 100644 (file)
@@ -466,7 +466,7 @@ static int m48t59_rtc_probe(struct platform_device *pdev)
        m48t59->rtc->ops = ops;
 
        nvmem_cfg.size = pdata->offset;
-       ret = rtc_nvmem_register(m48t59->rtc, &nvmem_cfg);
+       ret = devm_rtc_nvmem_register(m48t59->rtc, &nvmem_cfg);
        if (ret)
                return ret;
 
index 2b1135590dd56154ad73b7921149421ee38b798d..182cfe59e4e045e07ca8dc52b1e2049bb13a28ca 100644 (file)
@@ -259,7 +259,7 @@ static int m48t86_rtc_probe(struct platform_device *pdev)
        if (err)
                return err;
 
-       rtc_nvmem_register(info->rtc, &m48t86_nvmem_cfg);
+       devm_rtc_nvmem_register(info->rtc, &m48t86_nvmem_cfg);
 
        /* read battery status */
        reg = m48t86_readb(&pdev->dev, M48T86_D);
index 47ebcf834cc216c7f860482580362b8c80228d72..938267713a4dcdcd4c32b13e38209f0c8acda41b 100644 (file)
@@ -365,7 +365,7 @@ static int meson_rtc_probe(struct platform_device *pdev)
        }
 
        meson_rtc_nvmem_config.priv = rtc;
-       ret = rtc_nvmem_register(rtc->rtc, &meson_rtc_nvmem_config);
+       ret = devm_rtc_nvmem_register(rtc->rtc, &meson_rtc_nvmem_config);
        if (ret)
                goto out_disable_vdd;
 
index 606fa80ad6e0e07961d666cf82c63e4b172fcb36..e65f79fc77180829e169aac5320cd9b1a3a84cba 100644 (file)
@@ -890,7 +890,7 @@ static int omap_rtc_probe(struct platform_device *pdev)
        if (ret)
                goto err;
 
-       rtc_nvmem_register(rtc->rtc, &omap_rtc_nvmem_config);
+       devm_rtc_nvmem_register(rtc->rtc, &omap_rtc_nvmem_config);
 
        if (rtc->is_pmic_controller) {
                if (!pm_power_off) {
index fd46860152e15f0ed6f8ce07b2b05f814c9ba8d1..432cd627359b3c25fec98a30ac253b11a46d1c87 100644 (file)
@@ -608,7 +608,7 @@ static int pcf2127_probe(struct device *dev, struct regmap *regmap,
                        .size = 512,
                };
 
-               ret = rtc_nvmem_register(pcf2127->rtc, &nvmem_cfg);
+               ret = devm_rtc_nvmem_register(pcf2127->rtc, &nvmem_cfg);
        }
 
        /*
index f8b99cb72959040f5460fd8a567307eff6adaf65..c19f139e9b8dbd66b1bd6a43c1420eeb327817c0 100644 (file)
@@ -607,7 +607,7 @@ static int pcf85063_probe(struct i2c_client *client)
        }
 
        nvmem_cfg.priv = pcf85063->regmap;
-       rtc_nvmem_register(pcf85063->rtc, &nvmem_cfg);
+       devm_rtc_nvmem_register(pcf85063->rtc, &nvmem_cfg);
 
 #ifdef CONFIG_COMMON_CLK
        /* register clk in common clk framework */
index 3450d615974d586751689a5d70bf09803b8bc3e4..23cf14ca2c96e1af75759201ad71ac7023dbe602 100644 (file)
@@ -422,7 +422,7 @@ static int pcf85363_probe(struct i2c_client *client,
 
        for (i = 0; i < config->num_nvram; i++) {
                nvmem_cfg[i].priv = pcf85363;
-               rtc_nvmem_register(pcf85363->rtc, &nvmem_cfg[i]);
+               devm_rtc_nvmem_register(pcf85363->rtc, &nvmem_cfg[i]);
        }
 
        return ret;
index a69e8adcc4a119ba398c70122763654a869c9d95..8bc476c0905f216b86afddc1cf1bc8b10bbcdd47 100644 (file)
@@ -255,7 +255,7 @@ static int __init rp5c01_rtc_probe(struct platform_device *dev)
        priv->rtc = rtc;
 
        nvmem_cfg.priv = priv;
-       error = rtc_nvmem_register(rtc, &nvmem_cfg);
+       error = devm_rtc_nvmem_register(rtc, &nvmem_cfg);
        if (error)
                return error;
 
index fa226f0fe67d712bd0a6c8f20b3be0f1a5a7e838..f788df9797504d0f3844af4c52f066cd8fd9061c 100644 (file)
@@ -891,9 +891,9 @@ static int rv3028_probe(struct i2c_client *client)
                return ret;
 
        nvmem_cfg.priv = rv3028->regmap;
-       rtc_nvmem_register(rv3028->rtc, &nvmem_cfg);
+       devm_rtc_nvmem_register(rv3028->rtc, &nvmem_cfg);
        eeprom_cfg.priv = rv3028;
-       rtc_nvmem_register(rv3028->rtc, &eeprom_cfg);
+       devm_rtc_nvmem_register(rv3028->rtc, &eeprom_cfg);
 
        rv3028->rtc->max_user_freq = 1;
 
index 62718231731b089723f8276ae7f849b23370f0a4..ad359b3b74b259acfa5a51a6e376eaa6d13d4d2f 100644 (file)
@@ -755,7 +755,7 @@ static int rv3029_probe(struct device *dev, struct regmap *regmap, int irq,
                return rc;
 
        nvmem_cfg.priv = rv3029->regmap;
-       rtc_nvmem_register(rv3029->rtc, &nvmem_cfg);
+       devm_rtc_nvmem_register(rv3029->rtc, &nvmem_cfg);
 
        return 0;
 }
index 14e931d6f9c6ae0e2fee068f81b6f3bff744cf56..ed9cba3292e6855d14a781876e3e62faffe37676 100644 (file)
@@ -890,9 +890,9 @@ static int rv3032_probe(struct i2c_client *client)
                return ret;
 
        nvmem_cfg.priv = rv3032->regmap;
-       rtc_nvmem_register(rv3032->rtc, &nvmem_cfg);
+       devm_rtc_nvmem_register(rv3032->rtc, &nvmem_cfg);
        eeprom_cfg.priv = rv3032;
-       rtc_nvmem_register(rv3032->rtc, &eeprom_cfg);
+       devm_rtc_nvmem_register(rv3032->rtc, &eeprom_cfg);
 
        rv3032->rtc->max_user_freq = 1;
 
index 1d888da48c7c90bc08f7e1c6eff44d15ad53d9b6..44e1818a751cc6e53696ecd7816a8106bf39e5fd 100644 (file)
@@ -591,7 +591,7 @@ static int rv8803_probe(struct i2c_client *client,
        if (err)
                return err;
 
-       rtc_nvmem_register(rv8803->rtc, &nvmem_cfg);
+       devm_rtc_nvmem_register(rv8803->rtc, &nvmem_cfg);
 
        rv8803->rtc->max_user_freq = 1;
 
index 490f70f5763684a1ebfaafd7efdd999ae76a464e..017f74721cc06dd03cd400a28d9e8563fd797261 100644 (file)
@@ -302,7 +302,7 @@ static int rx8581_probe(struct i2c_client *client,
 
        for (i = 0; i < config->num_nvram; i++) {
                nvmem_cfg[i].priv = rx8581;
-               rtc_nvmem_register(rx8581->rtc, &nvmem_cfg[i]);
+               devm_rtc_nvmem_register(rx8581->rtc, &nvmem_cfg[i]);
        }
 
        return ret;
index 1ccf0d5d05b471435882127bdb2b70ae190f5a46..ad616bce7bca3ae217b9ab66b8eb19a91a63b274 100644 (file)
@@ -313,7 +313,7 @@ static int stk17ta8_rtc_probe(struct platform_device *pdev)
        pdata->rtc->ops = &stk17ta8_rtc_ops;
 
        nvmem_cfg.priv = pdata;
-       ret = rtc_nvmem_register(pdata->rtc, &nvmem_cfg);
+       ret = devm_rtc_nvmem_register(pdata->rtc, &nvmem_cfg);
        if (ret)
                return ret;
 
index abbb62b14d7a07ce23f7bf5a9d87bf9c37a8dd9c..11f46272bad34003db3955ad3c75ca2bd3dd86e9 100644 (file)
@@ -271,7 +271,7 @@ static int __init tx4939_rtc_probe(struct platform_device *pdev)
        pdata->rtc = rtc;
 
        nvmem_cfg.priv = pdata;
-       ret = rtc_nvmem_register(rtc, &nvmem_cfg);
+       ret = devm_rtc_nvmem_register(rtc, &nvmem_cfg);
        if (ret)
                return ret;
 
index 0983ab9faffb3e6ed5ca7897fd86d5d33bc355fa..cbca651d8ca4d61b03484e07b4f51e15ae922b84 100644 (file)
@@ -244,11 +244,11 @@ extern int rtc_hctosys_ret;
 #endif
 
 #ifdef CONFIG_RTC_NVMEM
-int rtc_nvmem_register(struct rtc_device *rtc,
-                      struct nvmem_config *nvmem_config);
+int devm_rtc_nvmem_register(struct rtc_device *rtc,
+                           struct nvmem_config *nvmem_config);
 #else
-static inline int rtc_nvmem_register(struct rtc_device *rtc,
-                                    struct nvmem_config *nvmem_config)
+static inline int devm_rtc_nvmem_register(struct rtc_device *rtc,
+                                         struct nvmem_config *nvmem_config)
 {
        return 0;
 }