mirror of
https://github.com/tbsdtv/linux_media.git
synced 2025-07-23 12:43:29 +02:00
rtc: ds1305: use rtc_lock/rtc_unlock
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
This commit is contained in:
@@ -435,13 +435,12 @@ static const struct rtc_class_ops ds1305_ops = {
|
|||||||
static void ds1305_work(struct work_struct *work)
|
static void ds1305_work(struct work_struct *work)
|
||||||
{
|
{
|
||||||
struct ds1305 *ds1305 = container_of(work, struct ds1305, work);
|
struct ds1305 *ds1305 = container_of(work, struct ds1305, work);
|
||||||
struct mutex *lock = &ds1305->rtc->ops_lock;
|
|
||||||
struct spi_device *spi = ds1305->spi;
|
struct spi_device *spi = ds1305->spi;
|
||||||
u8 buf[3];
|
u8 buf[3];
|
||||||
int status;
|
int status;
|
||||||
|
|
||||||
/* lock to protect ds1305->ctrl */
|
/* lock to protect ds1305->ctrl */
|
||||||
mutex_lock(lock);
|
rtc_lock(ds1305->rtc);
|
||||||
|
|
||||||
/* Disable the IRQ, and clear its status ... for now, we "know"
|
/* Disable the IRQ, and clear its status ... for now, we "know"
|
||||||
* that if more than one alarm is active, they're in sync.
|
* 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)
|
if (status < 0)
|
||||||
dev_dbg(&spi->dev, "clear irq --> %d\n", status);
|
dev_dbg(&spi->dev, "clear irq --> %d\n", status);
|
||||||
|
|
||||||
mutex_unlock(lock);
|
rtc_unlock(ds1305->rtc);
|
||||||
|
|
||||||
if (!test_bit(FLAG_EXITING, &ds1305->flags))
|
if (!test_bit(FLAG_EXITING, &ds1305->flags))
|
||||||
enable_irq(spi->irq);
|
enable_irq(spi->irq);
|
||||||
|
Reference in New Issue
Block a user