From patchwork Tue Aug 19 16:45:58 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Thompson X-Patchwork-Id: 35631 Return-Path: X-Original-To: linaro@patches.linaro.org Delivered-To: linaro@patches.linaro.org Received: from mail-yk0-f198.google.com (mail-yk0-f198.google.com [209.85.160.198]) by ip-10-151-82-157.ec2.internal (Postfix) with ESMTPS id 92B70202DD for ; Tue, 19 Aug 2014 16:50:48 +0000 (UTC) Received: by mail-yk0-f198.google.com with SMTP id q200sf22231605ykb.9 for ; Tue, 19 Aug 2014 09:50:48 -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:in-reply-to:references:x-original-sender :x-original-authentication-results:precedence:mailing-list:list-id :list-post:list-help:list-archive:list-unsubscribe; bh=yllVP/fm8neHnTqFhg2ZC0QN3fUws7u5Q/vWOIYIwiU=; b=AZ4ZLKOyJLO4zmzcwtX/K9/7tWKwyj1dOb8k3Xez1afavtJECfDLkXP0qCGiKLILtO Oglb1cf3s/vNCXZiEap4SYaAdZ4I7wlxAuolwICF81svN+9E9g2BQFGVHdE26K6DY6gb EP41WnU0ZRKPyhz1ljnXqe8uDpFuLtu+zL95wno1G1+dgpFx+p8j38Y8f0sAANGPBVxk cV6vL93UjX1poRQbHzca7NPlz0rypMns4CyEvmFnp9uKPq7pf13Pw9ie1HCsJ4aPiHqt 2cZL1Lv5vMGG8FqgAvGwNay+h1JCl6MYjtEBEdfrypZydMs6NB5NvM8eKJVwmzFbodSz TXsw== X-Gm-Message-State: ALoCoQmmss47vIJGTXSUNpYJ8QJtIwT3i5dWtYTs2JbgyeDnoc+42NNmw80qiRWWgQ+1Pjh5oH7T X-Received: by 10.236.87.210 with SMTP id y58mr18658299yhe.38.1408467048437; Tue, 19 Aug 2014 09:50:48 -0700 (PDT) MIME-Version: 1.0 X-BeenThere: patchwork-forward@linaro.org Received: by 10.140.89.5 with SMTP id u5ls3059509qgd.72.gmail; Tue, 19 Aug 2014 09:50:48 -0700 (PDT) X-Received: by 10.52.88.74 with SMTP id be10mr1386452vdb.54.1408467048382; Tue, 19 Aug 2014 09:50:48 -0700 (PDT) Received: from mail-vc0-f174.google.com (mail-vc0-f174.google.com [209.85.220.174]) by mx.google.com with ESMTPS id t9si9129657vco.90.2014.08.19.09.50.48 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Tue, 19 Aug 2014 09:50:48 -0700 (PDT) Received-SPF: pass (google.com: domain of patch+caf_=patchwork-forward=linaro.org@linaro.org designates 209.85.220.174 as permitted sender) client-ip=209.85.220.174; Received: by mail-vc0-f174.google.com with SMTP id la4so7626013vcb.5 for ; Tue, 19 Aug 2014 09:50:48 -0700 (PDT) X-Received: by 10.52.119.229 with SMTP id kx5mr2299044vdb.40.1408467048306; Tue, 19 Aug 2014 09:50:48 -0700 (PDT) X-Forwarded-To: patchwork-forward@linaro.org X-Forwarded-For: patch@linaro.org patchwork-forward@linaro.org Delivered-To: patches@linaro.org Received: by 10.221.37.5 with SMTP id tc5csp254642vcb; Tue, 19 Aug 2014 09:50:47 -0700 (PDT) X-Received: by 10.194.78.4 with SMTP id x4mr52315067wjw.44.1408467047367; Tue, 19 Aug 2014 09:50:47 -0700 (PDT) Received: from mail-wg0-f52.google.com (mail-wg0-f52.google.com [74.125.82.52]) by mx.google.com with ESMTPS id ho4si31877786wjb.122.2014.08.19.09.50.47 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Tue, 19 Aug 2014 09:50:47 -0700 (PDT) Received-SPF: pass (google.com: domain of daniel.thompson@linaro.org designates 74.125.82.52 as permitted sender) client-ip=74.125.82.52; Received: by mail-wg0-f52.google.com with SMTP id a1so6636505wgh.23 for ; Tue, 19 Aug 2014 09:50:47 -0700 (PDT) X-Received: by 10.194.205.196 with SMTP id li4mr50356792wjc.46.1408467046968; Tue, 19 Aug 2014 09:50:46 -0700 (PDT) Received: from sundance.lan (cpc4-aztw19-0-0-cust157.18-1.cable.virginm.net. [82.33.25.158]) by mx.google.com with ESMTPSA id gc8sm36225wic.3.2014.08.19.09.50.45 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 19 Aug 2014 09:50:46 -0700 (PDT) From: Daniel Thompson To: Russell King Cc: Daniel Thompson , linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, kgdb-bugreport@lists.sourceforge.net, patches@linaro.org, linaro-kernel@lists.linaro.org, John Stultz , Anton Vorontsov , Colin Cross , kernel-team@android.com, Rob Herring , Linus Walleij , Ben Dooks , Catalin Marinas , Dave Martin , Fabio Estevam , Frederic Weisbecker , Nicolas Pitre , Thomas Gleixner , Jason Cooper , Peter De Schrijver Subject: [PATCH v10 08/19] irqchip: gic: Remove spin locks from eoi_irq Date: Tue, 19 Aug 2014 17:45:58 +0100 Message-Id: <1408466769-20004-9-git-send-email-daniel.thompson@linaro.org> X-Mailer: git-send-email 1.9.3 In-Reply-To: <1408466769-20004-1-git-send-email-daniel.thompson@linaro.org> References: <1408369264-14242-1-git-send-email-daniel.thompson@linaro.org> <1408466769-20004-1-git-send-email-daniel.thompson@linaro.org> X-Removed-Original-Auth: Dkim didn't pass. X-Original-Sender: daniel.thompson@linaro.org X-Original-Authentication-Results: mx.google.com; spf=pass (google.com: domain of patch+caf_=patchwork-forward=linaro.org@linaro.org designates 209.85.220.174 as permitted sender) smtp.mail=patch+caf_=patchwork-forward=linaro.org@linaro.org Precedence: list Mailing-list: list patchwork-forward@linaro.org; contact patchwork-forward+owners@linaro.org List-ID: X-Google-Group-Id: 836684582541 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , This patch is motivated by the comment it removes from gic_init_fiq, namely that the spin locks in eoi_irq preclude certain platforms from supporting FIQ. Currently there is only one upstream platform (tegra) that actually hooks gic_arch_extn.irq_eoi and it does not require these spin locks. Signed-off-by: Daniel Thompson Cc: Thomas Gleixner Cc: Jason Cooper Cc: Peter De Schrijver --- drivers/irqchip/irq-gic.c | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/drivers/irqchip/irq-gic.c b/drivers/irqchip/irq-gic.c index 6fa0542..d928912 100644 --- a/drivers/irqchip/irq-gic.c +++ b/drivers/irqchip/irq-gic.c @@ -191,11 +191,8 @@ static void gic_unmask_irq(struct irq_data *d) static void gic_eoi_irq(struct irq_data *d) { - if (gic_arch_extn.irq_eoi) { - raw_spin_lock(&irq_controller_lock); + if (gic_arch_extn.irq_eoi) gic_arch_extn.irq_eoi(d); - raw_spin_unlock(&irq_controller_lock); - } writel_relaxed(gic_irq(d), gic_cpu_base(d) + GIC_CPU_EOI); } @@ -413,13 +410,6 @@ static void __init gic_init_fiq(struct gic_chip_data *gic, unsigned int i; /* - * FIQ can only be supported on platforms without an extended irq_eoi - * method (otherwise we take a lock during eoi handling). - */ - if (gic_arch_extn.irq_eoi) - return; - - /* * If grouping is not available (not implemented or prohibited by * security mode) these registers a read-as-zero/write-ignored. * However as a precaution we restore the reset default regardless of