Call rtc_nvmem_register instead of letting the core do it and stop using
the nvmem_config member of struct rtc_device.

Signed-off-by: Alexandre Belloni <alexandre.bell...@bootlin.com>
---
 drivers/rtc/rtc-ds1307.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/rtc/rtc-ds1307.c b/drivers/rtc/rtc-ds1307.c
index 923dde912f60..c146411a2099 100644
--- a/drivers/rtc/rtc-ds1307.c
+++ b/drivers/rtc/rtc-ds1307.c
@@ -1696,6 +1696,11 @@ static int ds1307_probe(struct i2c_client *client,
                }
        }
 
+       ds1307->rtc->ops = chip->rtc_ops ?: &ds13xx_rtc_ops;
+       err = rtc_register_device(ds1307->rtc);
+       if (err)
+               return err;
+
        if (chip->nvram_size) {
                ds1307->nvmem_cfg.name = "ds1307_nvram";
                ds1307->nvmem_cfg.word_size = 1;
@@ -1705,15 +1710,10 @@ static int ds1307_probe(struct i2c_client *client,
                ds1307->nvmem_cfg.reg_write = ds1307_nvram_write;
                ds1307->nvmem_cfg.priv = ds1307;
 
-               ds1307->rtc->nvmem_config = &ds1307->nvmem_cfg;
                ds1307->rtc->nvram_old_abi = true;
+               rtc_nvmem_register(ds1307->rtc, &ds1307->nvmem_cfg);
        }
 
-       ds1307->rtc->ops = chip->rtc_ops ?: &ds13xx_rtc_ops;
-       err = rtc_register_device(ds1307->rtc);
-       if (err)
-               return err;
-
        ds1307_hwmon_register(ds1307);
        ds1307_clks_register(ds1307);
 
-- 
2.16.1

Reply via email to