From patchwork Thu May 17 03:35:49 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ming Lei X-Patchwork-Id: 159807 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from mail-yx0-f184.google.com (mail-yx0-f184.google.com [209.85.213.184]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority" (not verified)) by ozlabs.org (Postfix) with ESMTPS id EA8F8B6FAB for ; Thu, 17 May 2012 13:36:06 +1000 (EST) Received: by yenl7 with SMTP id l7sf1289942yen.11 for ; Wed, 16 May 2012 20:36:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=beta; h=mime-version:x-beenthere:received-spf:from:to:cc:subject:date :message-id:x-mailer:x-original-sender :x-original-authentication-results:reply-to:precedence:mailing-list :list-id:x-google-group-id:list-post:list-help:list-archive:sender :list-subscribe:list-unsubscribe:content-type; bh=joV00opmyo+EQRn5EeyNHtvw3C11T6wenCZMUwxozCg=; b=u1bwuOSprQluZ7WYt+HWvRgqd5iLk9ec1bO7OK3ZnTE3EBIuKPwwR3WBHo7q2OA3KL R75KPmF6o9QWQovsQjvMEMLikPDOoEQyd5vgLG1e0h1+nGxOz/gEs0dPmfYAQqYEhtzP n6Wg/G55DnMgfzqmUicxcoVtLUyigvajJyeK8= Received: by 10.68.236.234 with SMTP id ux10mr1074909pbc.9.1337225763137; Wed, 16 May 2012 20:36:03 -0700 (PDT) MIME-Version: 1.0 X-BeenThere: rtc-linux@googlegroups.com Received: by 10.68.216.166 with SMTP id or6ls4406784pbc.9.gmail; Wed, 16 May 2012 20:36:02 -0700 (PDT) Received: by 10.68.223.40 with SMTP id qr8mr8368079pbc.0.1337225762888; Wed, 16 May 2012 20:36:02 -0700 (PDT) Received: by 10.68.223.40 with SMTP id qr8mr8368078pbc.0.1337225762879; Wed, 16 May 2012 20:36:02 -0700 (PDT) Received: from mail-pz0-f50.google.com (mail-pz0-f50.google.com [209.85.210.50]) by gmr-mx.google.com with ESMTPS id or6si9785919pbc.0.2012.05.16.20.36.02 (version=TLSv1/SSLv3 cipher=OTHER); Wed, 16 May 2012 20:36:02 -0700 (PDT) Received-SPF: pass (google.com: domain of tom.leiming@gmail.com designates 209.85.210.50 as permitted sender) client-ip=209.85.210.50; Received: by danh15 with SMTP id h15so1805807dan.9 for ; Wed, 16 May 2012 20:36:02 -0700 (PDT) Received: by 10.68.225.104 with SMTP id rj8mr22886608pbc.135.1337225762768; Wed, 16 May 2012 20:36:02 -0700 (PDT) Received: from localhost ([183.37.204.248]) by mx.google.com with ESMTPS id ph1sm7602231pbb.45.2012.05.16.20.35.59 (version=TLSv1/SSLv3 cipher=OTHER); Wed, 16 May 2012 20:36:02 -0700 (PDT) From: Ming Lei To: Alessandro Zummo , Grant Likely Cc: rtc-linux@googlegroups.com, linux-kernel@vger.kernel.org, Ming Lei Subject: [rtc-linux] [PATCH -next] rtc-twl: pass IRQF_ONESHOT to request_threaded_irq Date: Thu, 17 May 2012 11:35:49 +0800 Message-Id: <1337225749-7106-1-git-send-email-ming.lei@canonical.com> X-Mailer: git-send-email 1.7.9.5 X-Original-Sender: ming.lei@canonical.com X-Original-Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of tom.leiming@gmail.com designates 209.85.210.50 as permitted sender) smtp.mail=tom.leiming@gmail.com Reply-To: rtc-linux@googlegroups.com Precedence: list Mailing-list: list rtc-linux@googlegroups.com; contact rtc-linux+owners@googlegroups.com List-ID: X-Google-Group-Id: 712029733259 List-Post: , List-Help: , List-Archive: Sender: rtc-linux@googlegroups.com List-Subscribe: , List-Unsubscribe: , The flag of IRQF_ONESHOT should be passed to request_threaded_irq, otherwise the following failure message will be dumped because hardware handler is defined as NULL: [ 3.329864] genirq: Threaded irq requested with handler=NULL and !ONESHOT for irq 363 [ 3.338226] twl_rtc twl_rtc: IRQ is not free. [ 3.346099] twl_rtc: probe of twl_rtc failed with error -22 The patch fixes the rtc-twl probe failure. Signed-off-by: Ming Lei --- drivers/rtc/rtc-twl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/rtc/rtc-twl.c b/drivers/rtc/rtc-twl.c index 258abea..c5d06fe 100644 --- a/drivers/rtc/rtc-twl.c +++ b/drivers/rtc/rtc-twl.c @@ -510,7 +510,7 @@ static int __devinit twl_rtc_probe(struct platform_device *pdev) } ret = request_threaded_irq(irq, NULL, twl_rtc_interrupt, - IRQF_TRIGGER_RISING, + IRQF_TRIGGER_RISING | IRQF_ONESHOT, dev_name(&rtc->dev), rtc); if (ret < 0) { dev_err(&pdev->dev, "IRQ is not free.\n");