From 3b6bddda2fb68e0f784f5e5fabe91ba3f7399ef5 Mon Sep 17 00:00:00 2001 From: Thomas Bogendoerfer Date: Tue, 16 Apr 2019 11:34:04 +0200 Subject: rtc: ds1685: use threaded interrupt Handling of extended interrupts (kickstart, wake-up, ram-clear) was moved off to a work queue, but the interrupts aren't acknowledged in the interrupt handler. This leads to a deadlock, if driver is used with interrupts. To fix this we use a threaded interrupt, get rid of the work queue and do locking with just the rtc mutex lock. Fixes: aaaf5fbf56f1 ("rtc: add driver for DS1685 family of real time clocks") Signed-off-by: Thomas Bogendoerfer Signed-off-by: Alexandre Belloni --- include/linux/rtc/ds1685.h | 2 -- 1 file changed, 2 deletions(-) (limited to 'include/linux/rtc/ds1685.h') diff --git a/include/linux/rtc/ds1685.h b/include/linux/rtc/ds1685.h index e6337a56d741..a00b332c505f 100644 --- a/include/linux/rtc/ds1685.h +++ b/include/linux/rtc/ds1685.h @@ -48,8 +48,6 @@ struct ds1685_priv { u32 regstep; resource_size_t baseaddr; size_t size; - spinlock_t lock; - struct work_struct work; int irq_num; bool bcd_mode; bool no_irq; -- cgit v1.2.3