From patchwork Fri Apr 4 14:04:38 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Linus Walleij X-Patchwork-Id: 27835 Return-Path: X-Original-To: linaro@patches.linaro.org Delivered-To: linaro@patches.linaro.org Received: from mail-wi0-f200.google.com (mail-wi0-f200.google.com [209.85.212.200]) by ip-10-151-82-157.ec2.internal (Postfix) with ESMTPS id B20DB20369 for ; Fri, 4 Apr 2014 14:05:00 +0000 (UTC) Received: by mail-wi0-f200.google.com with SMTP id d1sf671507wiv.11 for ; Fri, 04 Apr 2014 07:04:59 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:delivered-to:from:to:cc:subject :date:message-id:sender:precedence:list-id:x-original-sender :x-original-authentication-results:mailing-list:list-post:list-help :list-archive:list-unsubscribe; bh=+xfGgkpxnbIwjHF00K0xljo+4JFS+EA032hYD1gTHsM=; b=f2O+78rtLcvbmr9bNxwXsbJMfXOuSBWNnWaEjO1U9EUaBuzEu+h0iUV4ivKbUAVyqJ Nk4PwmDzgyMYp/JhNLKA51uG9jMDqdYap04uKotPSqQeJ7Gi+k+/g6ACj/7eHLK0izNR E13oMoXdL1oXSWteCmNSozuRDxUww64SjbE4qNmqfy8CI2FwZ+onaslzvPwQpEWpKjWN DJVEs522GYYxKFfS2y2/8g/SkF9OnKylz65nT/jd11QEn0PUaEL+S8xbPF+HRNqZYgWc gJp5xZMZ+lYNgHqHvSO5+Ohh7zJabUtBHQiskbLLbuGCHE5CForwg9YB9wQpkltQ6ldl 8rYg== X-Gm-Message-State: ALoCoQnSzh1rR4scyOO6VHyIUgfCUBmVU5KyPgX+nvsVVFeVB/taTvQLparnEqAb6cT06C7Ouu0B X-Received: by 10.180.189.133 with SMTP id gi5mr401673wic.3.1396620299306; Fri, 04 Apr 2014 07:04:59 -0700 (PDT) MIME-Version: 1.0 X-BeenThere: patchwork-forward@linaro.org Received: by 10.140.85.82 with SMTP id m76ls630688qgd.62.gmail; Fri, 04 Apr 2014 07:04:59 -0700 (PDT) X-Received: by 10.52.173.165 with SMTP id bl5mr11082885vdc.13.1396620299140; Fri, 04 Apr 2014 07:04:59 -0700 (PDT) Received: from mail-vc0-f175.google.com (mail-vc0-f175.google.com [209.85.220.175]) by mx.google.com with ESMTPS id si3si1784076vcb.136.2014.04.04.07.04.59 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 04 Apr 2014 07:04:59 -0700 (PDT) Received-SPF: neutral (google.com: 209.85.220.175 is neither permitted nor denied by best guess record for domain of patch+caf_=patchwork-forward=linaro.org@linaro.org) client-ip=209.85.220.175; Received: by mail-vc0-f175.google.com with SMTP id lh14so3183822vcb.34 for ; Fri, 04 Apr 2014 07:04:59 -0700 (PDT) X-Received: by 10.220.198.197 with SMTP id ep5mr2531621vcb.21.1396620299034; Fri, 04 Apr 2014 07:04:59 -0700 (PDT) X-Forwarded-To: patchwork-forward@linaro.org X-Forwarded-For: patch@linaro.org patchwork-forward@linaro.org Delivered-To: patch@linaro.org Received: by 10.220.12.8 with SMTP id v8csp116818vcv; Fri, 4 Apr 2014 07:04:58 -0700 (PDT) X-Received: by 10.69.17.230 with SMTP id gh6mr15528745pbd.0.1396620297728; Fri, 04 Apr 2014 07:04:57 -0700 (PDT) Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id dg5si4651701pbc.93.2014.04.04.07.04.56; Fri, 04 Apr 2014 07:04:56 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753403AbaDDOEs (ORCPT + 27 others); Fri, 4 Apr 2014 10:04:48 -0400 Received: from mail-wi0-f172.google.com ([209.85.212.172]:39839 "EHLO mail-wi0-f172.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752925AbaDDOEq (ORCPT ); Fri, 4 Apr 2014 10:04:46 -0400 Received: by mail-wi0-f172.google.com with SMTP id hi2so1342779wib.5 for ; Fri, 04 Apr 2014 07:04:45 -0700 (PDT) X-Received: by 10.180.188.130 with SMTP id ga2mr4969519wic.18.1396620285161; Fri, 04 Apr 2014 07:04:45 -0700 (PDT) Received: from localhost.localdomain ([85.235.11.236]) by mx.google.com with ESMTPSA id eq8sm4866186wib.16.2014.04.04.07.04.43 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 04 Apr 2014 07:04:44 -0700 (PDT) From: Linus Walleij To: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Cc: linux-gpio@vger.kernel.org, Linus Walleij , Srinivas Kandagatla , Maxime COQUELIN , Giuseppe Cavallaro Subject: [PATCH] pinctrl: st: switch IRQ locking to resource callbacks Date: Fri, 4 Apr 2014 16:04:38 +0200 Message-Id: <1396620278-18107-1-git-send-email-linus.walleij@linaro.org> X-Mailer: git-send-email 1.9.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: list List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Removed-Original-Auth: Dkim didn't pass. X-Original-Sender: linus.walleij@linaro.org X-Original-Authentication-Results: mx.google.com; spf=neutral (google.com: 209.85.220.175 is neither permitted nor denied by best guess record for domain of patch+caf_=patchwork-forward=linaro.org@linaro.org) smtp.mail=patch+caf_=patchwork-forward=linaro.org@linaro.org Mailing-list: list patchwork-forward@linaro.org; contact patchwork-forward+owners@linaro.org X-Google-Group-Id: 836684582541 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , In the mass-conversion to the new irqchip callbacks, this in-transit IRQ support was missed. Fix it. Cc: Srinivas Kandagatla Cc: Maxime COQUELIN Cc: Giuseppe Cavallaro Signed-off-by: Linus Walleij --- drivers/pinctrl/pinctrl-st.c | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/drivers/pinctrl/pinctrl-st.c b/drivers/pinctrl/pinctrl-st.c index bd725b0a4341..639af4a9a2e4 100644 --- a/drivers/pinctrl/pinctrl-st.c +++ b/drivers/pinctrl/pinctrl-st.c @@ -1312,25 +1312,23 @@ static void st_gpio_irq_unmask(struct irq_data *d) writel(BIT(d->hwirq), bank->base + REG_PIO_SET_PMASK); } -static unsigned int st_gpio_irq_startup(struct irq_data *d) +static int st_gpio_irq_reqres(struct irq_data *d) { struct st_gpio_bank *bank = irq_data_get_irq_chip_data(d); - if (gpio_lock_as_irq(&bank->gpio_chip, d->hwirq)) + if (gpio_lock_as_irq(&bank->gpio_chip, d->hwirq)) { dev_err(bank->gpio_chip.dev, "unable to lock HW IRQ %lu for IRQ\n", d->hwirq); - - st_gpio_irq_unmask(d); - + return -EINVAL; + } return 0; } -static void st_gpio_irq_shutdown(struct irq_data *d) +static void st_gpio_irq_relres(struct irq_data *d) { struct st_gpio_bank *bank = irq_data_get_irq_chip_data(d); - st_gpio_irq_mask(d); gpio_unlock_as_irq(&bank->gpio_chip, d->hwirq); } @@ -1491,8 +1489,8 @@ static struct irq_chip st_gpio_irqchip = { .irq_mask = st_gpio_irq_mask, .irq_unmask = st_gpio_irq_unmask, .irq_set_type = st_gpio_irq_set_type, - .irq_startup = st_gpio_irq_startup, - .irq_shutdown = st_gpio_irq_shutdown, + .irq_request_resources = st_gpio_irq_reqres, + .irq_release_resources = st_gpio_irq_relres, }; static int st_gpio_irq_domain_map(struct irq_domain *h,