From e0f2c271e0e3feaab8f8190b39876683099d3f6a Mon Sep 17 00:00:00 2001 From: Hiroshi DOYU Date: Wed, 15 Aug 2007 09:40:38 +0300 Subject: [PATCH] ARM: OMAP: Fix inconsistency of completion in retu-rtc There was the case that multiple users can wait for completion. Signed-off-by: Hiroshi DOYU Signed-off-by: Tony Lindgren --- drivers/cbus/retu-rtc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/cbus/retu-rtc.c b/drivers/cbus/retu-rtc.c index b36fd06323a..5d435201969 100644 --- a/drivers/cbus/retu-rtc.c +++ b/drivers/cbus/retu-rtc.c @@ -328,7 +328,7 @@ DECLARE_WORK(retu_rtca_work, retu_rtca_expired); static void retu_rtcs_interrupt(unsigned long unused) { retu_ack_irq(RETU_INT_RTCS); - complete(&retu_rtc_sync); + complete_all(&retu_rtc_sync); } static void retu_rtca_interrupt(unsigned long unused) @@ -435,7 +435,7 @@ static struct platform_device retu_rtc_device = { /* This function provides syncronization with the RTCS interrupt handler */ static void retu_rtc_barrier(void) { - init_completion(&retu_rtc_sync); + INIT_COMPLETION(retu_rtc_sync); retu_ack_irq(RETU_INT_RTCS); retu_enable_irq(RETU_INT_RTCS); wait_for_completion(&retu_rtc_sync); -- 2.41.0