Skip to content

Commit

Permalink
blackfin RTC driver: disable the write complete irq upon close
Browse files Browse the repository at this point in the history
Signed-off-by: Mike Frysinger <vapier.adi@gmail.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Cc: David Brownell <david-b@pacbell.net>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  • Loading branch information
Mike Frysinger authored and torvalds committed Aug 5, 2008
1 parent 605eb8b commit 3b128fe
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions drivers/rtc/rtc-bfin.c
Expand Up @@ -144,13 +144,13 @@ static void bfin_rtc_sync_pending(struct device *dev)
* Initialize the RTC. Enable pre-scaler to scale RTC clock
* to 1Hz and clear interrupt/status registers.
*/
static void bfin_rtc_reset(struct device *dev)
static void bfin_rtc_reset(struct device *dev, u16 rtc_ictl)
{
struct bfin_rtc *rtc = dev_get_drvdata(dev);
dev_dbg_stamp(dev);
bfin_rtc_sync_pending(dev);
bfin_write_RTC_PREN(0x1);
bfin_write_RTC_ICTL(RTC_ISTAT_WRITE_COMPLETE);
bfin_write_RTC_ICTL(rtc_ictl);
bfin_write_RTC_SWCNT(0);
bfin_write_RTC_ALARM(0);
bfin_write_RTC_ISTAT(0xFFFF);
Expand Down Expand Up @@ -226,15 +226,15 @@ static int bfin_rtc_open(struct device *dev)

ret = request_irq(IRQ_RTC, bfin_rtc_interrupt, IRQF_SHARED, to_platform_device(dev)->name, dev);
if (!ret)
bfin_rtc_reset(dev);
bfin_rtc_reset(dev, RTC_ISTAT_WRITE_COMPLETE);

return ret;
}

static void bfin_rtc_release(struct device *dev)
{
dev_dbg_stamp(dev);
bfin_rtc_reset(dev);
bfin_rtc_reset(dev, 0);
free_irq(IRQ_RTC, dev);
}

Expand Down

0 comments on commit 3b128fe

Please sign in to comment.