diff options
Diffstat (limited to 'drivers/rtc/rtc-pl031.c')
| -rw-r--r-- | drivers/rtc/rtc-pl031.c | 14 | 
1 files changed, 3 insertions, 11 deletions
diff --git a/drivers/rtc/rtc-pl031.c b/drivers/rtc/rtc-pl031.c index f027c063fb2..cc0533994f6 100644 --- a/drivers/rtc/rtc-pl031.c +++ b/drivers/rtc/rtc-pl031.c @@ -220,17 +220,9 @@ static irqreturn_t pl031_interrupt(int irq, void *dev_id)  	unsigned long events = 0;  	rtcmis = readl(ldata->base + RTC_MIS); -	if (rtcmis) { -		writel(rtcmis, ldata->base + RTC_ICR); - -		if (rtcmis & RTC_BIT_AI) -			events |= (RTC_AF | RTC_IRQF); - -		/* Timer interrupt is only available in ST variants */ -		if ((rtcmis & RTC_BIT_PI) && -			(ldata->hw_designer == AMBA_VENDOR_ST)) -			events |= (RTC_PF | RTC_IRQF); - +	if (rtcmis & RTC_BIT_AI) { +		writel(RTC_BIT_AI, ldata->base + RTC_ICR); +		events |= (RTC_AF | RTC_IRQF);  		rtc_update_irq(ldata->rtc, 1, events);  		return IRQ_HANDLED;  |