rtc: ds1305: use rtc_lock/rtc_unlock
authorAlexandre Belloni <alexandre.belloni@bootlin.com>
Tue, 19 Jan 2021 22:06:41 +0000 (23:06 +0100)
committerAlexandre Belloni <alexandre.belloni@bootlin.com>
Mon, 25 Jan 2021 22:46:16 +0000 (23:46 +0100)
Avoid accessing directly rtc->ops_lock and use the RTC core helpers.

Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Link: https://lore.kernel.org/r/20210119220653.677750-3-alexandre.belloni@bootlin.com
drivers/rtc/rtc-ds1305.c

index 8c2ab29..9ef107b 100644 (file)
@@ -435,13 +435,12 @@ static const struct rtc_class_ops ds1305_ops = {
 static void ds1305_work(struct work_struct *work)
 {
        struct ds1305   *ds1305 = container_of(work, struct ds1305, work);
-       struct mutex    *lock = &ds1305->rtc->ops_lock;
        struct spi_device *spi = ds1305->spi;
        u8              buf[3];
        int             status;
 
        /* lock to protect ds1305->ctrl */
-       mutex_lock(lock);
+       rtc_lock(ds1305->rtc);
 
        /* Disable the IRQ, and clear its status ... for now, we "know"
         * that if more than one alarm is active, they're in sync.
@@ -459,7 +458,7 @@ static void ds1305_work(struct work_struct *work)
        if (status < 0)
                dev_dbg(&spi->dev, "clear irq --> %d\n", status);
 
-       mutex_unlock(lock);
+       rtc_unlock(ds1305->rtc);
 
        if (!test_bit(FLAG_EXITING, &ds1305->flags))
                enable_irq(spi->irq);