diff options
author | Johan Hovold <johan@kernel.org> | 2014-12-10 18:52:36 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-12-10 20:41:13 -0500 |
commit | 1ed8b5d26c33d5c95845be7d51aae2bf6f1b053c (patch) | |
tree | a48bd8d37cdda37e99ded7e476d2eebc0e4c9b27 /drivers/rtc | |
parent | 7ecd9a3f062147400e605713724dd67dbb7e5053 (diff) |
rtc: omap: fix interrupt disable at probe
Use writel instead of writeb when disabling interrupts at probe as
ALARM2 is not cleared otherwise on some IP-block revisions (e.g.
AM3352).
Note that the driver currently never enables the ALARM2 interrupt.
Signed-off-by: Johan Hovold <johan@kernel.org>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Cc: Tony Lindgren <tony@atomide.com>
Cc: Benot Cousson <bcousson@baylibre.com>
Cc: Lokesh Vutla <lokeshvutla@ti.com>
Cc: Guenter Roeck <linux@roeck-us.net>
Cc: Sekhar Nori <nsekhar@ti.com>
Cc: Tero Kristo <t-kristo@ti.com>
Cc: Keerthy J <j-keerthy@ti.com>
Tested-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/rtc')
-rw-r--r-- | drivers/rtc/rtc-omap.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/rtc/rtc-omap.c b/drivers/rtc/rtc-omap.c index 828cb9983cc2..813d475fe7c6 100644 --- a/drivers/rtc/rtc-omap.c +++ b/drivers/rtc/rtc-omap.c | |||
@@ -427,10 +427,12 @@ static int __init omap_rtc_probe(struct platform_device *pdev) | |||
427 | } | 427 | } |
428 | platform_set_drvdata(pdev, rtc); | 428 | platform_set_drvdata(pdev, rtc); |
429 | 429 | ||
430 | /* clear pending irqs, and set 1/second periodic, | 430 | /* |
431 | * which we'll use instead of update irqs | 431 | * disable interrupts |
432 | * | ||
433 | * NOTE: ALARM2 is not cleared on AM3352 if rtc_write (writeb) is used | ||
432 | */ | 434 | */ |
433 | rtc_write(0, OMAP_RTC_INTERRUPTS_REG); | 435 | rtc_writel(0, OMAP_RTC_INTERRUPTS_REG); |
434 | 436 | ||
435 | /* enable RTC functional clock */ | 437 | /* enable RTC functional clock */ |
436 | if (id_entry->driver_data & OMAP_RTC_HAS_32KCLK_EN) { | 438 | if (id_entry->driver_data & OMAP_RTC_HAS_32KCLK_EN) { |