| 1 | --- a/drivers/rtc/rtc-twl.c |
| 2 | +++ b/drivers/rtc/rtc-twl.c |
| 3 | @@ -362,14 +362,6 @@ static irqreturn_t twl_rtc_interrupt(int |
| 4 | int res; |
| 5 | u8 rd_reg; |
| 6 | |
| 7 | -#ifdef CONFIG_LOCKDEP |
| 8 | - /* WORKAROUND for lockdep forcing IRQF_DISABLED on us, which |
| 9 | - * we don't want and can't tolerate. Although it might be |
| 10 | - * friendlier not to borrow this thread context... |
| 11 | - */ |
| 12 | - local_irq_enable(); |
| 13 | -#endif |
| 14 | - |
| 15 | res = twl_rtc_read_u8(&rd_reg, REG_RTC_STATUS_REG); |
| 16 | if (res) |
| 17 | goto out; |
| 18 | @@ -462,7 +454,7 @@ static int __devinit twl_rtc_probe(struc |
| 19 | if (ret < 0) |
| 20 | goto out1; |
| 21 | |
| 22 | - ret = request_irq(irq, twl_rtc_interrupt, |
| 23 | + ret = request_threaded_irq(irq, NULL, twl_rtc_interrupt, |
| 24 | IRQF_TRIGGER_RISING, |
| 25 | dev_name(&rtc->dev), rtc); |
| 26 | if (ret < 0) { |
| 27 | |