/* RTC interrupt handler @rtc RTC private data structure  */
static irqreturn_t kinetis_rtc_irq(int irq, void *dev_id)
/* RTC interrupt handler @rtc RTC private data structure  */
static irqreturn_t kinetis_rtc_irq(int irq, void *dev_id)
{
	struct kinetis_rtc *rtc = (struct kinetis_rtc *) dev_id;
	long unsigned int secs;
	spin_lock(&rtc->lock);
	writel(readl(&KINETIS_RTC(rtc)->rtc_ier) & ~KINETIS_RTC_IER_TAIE,
		&KINETIS_RTC(rtc)->rtc_ier);
	secs = 0;
	writel(&secs, &KINETIS_RTC(rtc)->rtc_tar);
	spin_unlock(&rtc->lock);
	d_printk(2, "RTC interrupt\n");
	return IRQ_HANDLED;
}