OSDN Git Service

rtc: ds1343: switch to rtc_register_device
authorAlexandre Belloni <alexandre.belloni@bootlin.com>
Mon, 12 Feb 2018 22:47:36 +0000 (23:47 +0100)
committerAlexandre Belloni <alexandre.belloni@bootlin.com>
Thu, 1 Mar 2018 09:49:24 +0000 (10:49 +0100)
This allows for future improvement of the driver.

Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
drivers/rtc/rtc-ds1343.c

index b5102cd..a5a5a36 100644 (file)
@@ -642,12 +642,15 @@ static int ds1343_probe(struct spi_device *spi)
        data &= ~(DS1343_OSF | DS1343_IRQF1 | DS1343_IRQF0);
        regmap_write(priv->map, DS1343_STATUS_REG, data);
 
-       priv->rtc = devm_rtc_device_register(&spi->dev, "ds1343",
-                                       &ds1343_rtc_ops, THIS_MODULE);
-       if (IS_ERR(priv->rtc)) {
-               dev_err(&spi->dev, "unable to register rtc ds1343\n");
+       priv->rtc = devm_rtc_allocate_device(&spi->dev);
+       if (IS_ERR(priv->rtc))
                return PTR_ERR(priv->rtc);
-       }
+
+       priv->rtc->ops = &ds1343_rtc_ops;
+
+       res = rtc_register_device(priv->rtc);
+       if (res)
+               return res;
 
        priv->irq = spi->irq;