From patchwork Thu Sep 27 09:55:17 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Barry Song X-Patchwork-Id: 1512661 Return-Path: X-Original-To: patchwork-linux-arm@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork1.kernel.org Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) by patchwork1.kernel.org (Postfix) with ESMTP id 1F4353FC71 for ; Thu, 27 Sep 2012 10:01:06 +0000 (UTC) Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.76 #1 (Red Hat Linux)) id 1THArY-0006G4-0a; Thu, 27 Sep 2012 09:58:32 +0000 Received: from cluster-g.mailcontrol.com ([208.87.233.190]) by merlin.infradead.org with esmtps (Exim 4.76 #1 (Red Hat Linux)) id 1THArU-0006Eh-39 for linux-arm-kernel@lists.infradead.org; Thu, 27 Sep 2012 09:58:28 +0000 Received: from rly12g.srv.mailcontrol.com (localhost.localdomain [127.0.0.1]) by rly12g.srv.mailcontrol.com (MailControl) with ESMTP id q8R9wQdn013046 for ; Thu, 27 Sep 2012 10:58:26 +0100 Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by rly12g.srv.mailcontrol.com (MailControl) id q8R9wGMH012929 for ; Thu, 27 Sep 2012 10:58:16 +0100 Received: from banasiexc02.ASIA.ROOT.PRI ([202.80.51.114]) by rly12g-eth0.srv.mailcontrol.com (envelope-sender ) (MIMEDefang) with ESMTP id q8R9wC3S012658 (TLS bits=128 verify=FAIL); Thu, 27 Sep 2012 10:58:16 +0100 (BST) Received: from SHAASIEXC02.ASIA.ROOT.PRI (10.125.12.85) by banasiexc02.ASIA.ROOT.PRI (10.190.12.22) with Microsoft SMTP Server (TLS) id 14.1.355.2; Thu, 27 Sep 2012 15:28:11 +0530 Received: from localhost.localdomain (10.125.36.195) by asimail.csr.com (10.125.12.88) with Microsoft SMTP Server (TLS) id 14.1.355.2; Thu, 27 Sep 2012 17:58:09 +0800 From: Barry Song To: Subject: [PATCH 3/6] pinctrl: sirf: fix spinlock deadlock in sirfsoc_gpio_set_input Date: Thu, 27 Sep 2012 17:55:17 +0800 Message-ID: <1348739717-21148-1-git-send-email-Barry.Song@csr.com> X-Mailer: git-send-email 1.7.1 MIME-Version: 1.0 X-Originating-IP: [10.125.36.195] X-Scanned-By: MailControl 9446.0 (www.mailcontrol.com) on 10.71.1.122 X-Spam-Note: CRM114 invocation failed X-Spam-Score: -2.6 (--) X-Spam-Report: SpamAssassin version 3.3.2 on merlin.infradead.org summary: Content analysis details: (-2.6 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/, low trust [208.87.233.190 listed in list.dnswl.org] -0.0 SPF_HELO_PASS SPF: HELO matches SPF record -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] Cc: workgroup.linux@csr.com, linux-arm-kernel@lists.infradead.org, Barry Song X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: linux-arm-kernel-bounces@lists.infradead.org Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org From: Barry Song sirfsoc_gpio_set_input() is called in those functions which have held the spinlock, so delete the duplicated locking. Signed-off-by: Barry Song --- drivers/pinctrl/pinctrl-sirf.c | 5 ----- 1 files changed, 0 insertions(+), 5 deletions(-) diff --git a/drivers/pinctrl/pinctrl-sirf.c b/drivers/pinctrl/pinctrl-sirf.c index 6634944..6eae934 100644 --- a/drivers/pinctrl/pinctrl-sirf.c +++ b/drivers/pinctrl/pinctrl-sirf.c @@ -1514,15 +1514,10 @@ static void sirfsoc_gpio_handle_irq(unsigned int irq, struct irq_desc *desc) static inline void sirfsoc_gpio_set_input(struct sirfsoc_gpio_bank *bank, unsigned ctrl_offset) { u32 val; - unsigned long flags; - - spin_lock_irqsave(&bank->lock, flags); val = readl(bank->chip.regs + ctrl_offset); val &= ~SIRFSOC_GPIO_CTL_OUT_EN_MASK; writel(val, bank->chip.regs + ctrl_offset); - - spin_unlock_irqrestore(&bank->lock, flags); } static int sirfsoc_gpio_request(struct gpio_chip *chip, unsigned offset)