From patchwork Mon Aug 18 14:12:56 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Thompson X-Patchwork-Id: 35505 Return-Path: X-Original-To: linaro@patches.linaro.org Delivered-To: linaro@patches.linaro.org Received: from mail-ob0-f199.google.com (mail-ob0-f199.google.com [209.85.214.199]) by ip-10-151-82-157.ec2.internal (Postfix) with ESMTPS id 0FCE420523 for ; Mon, 18 Aug 2014 14:13:22 +0000 (UTC) Received: by mail-ob0-f199.google.com with SMTP id wn1sf35965524obc.10 for ; Mon, 18 Aug 2014 07:13:21 -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=kvl9YgU7KHiTWJlYL9/3UTFGA1cT6OdivwSt4pIB9klbG9C2/TXGKNg85wqPxjaF28 tbR8i8RqFHdL91tSj7l6Tb4V8SEybhh1o/OOQZm5WgnBN9bKv7dCII8te4czo7KYbFYh y8a+mOKo+ql5y/cNGMrHNQS0pToCv7fhGojfjfnTw9AdPrQ5yNv4LbklwiBWUai74b9g 8Ol/BIDE5XNSNxjNPAzajhYuBFs10O0oRtd+mKcgrGmzcrjHx/aDWOvaiRmINaI5RtZW 10a+ke7hACZmOXWNmiIhjz90SgLWvdZxdTuEzLZoLWz/+kgpfDJSYbH4tgKD/mj2OvWn 9w7A== X-Gm-Message-State: ALoCoQl9l1sWUNV9Rk2tGOZD1LnOFsyn6eUbjix4bzMlaMAm5Y5aqeNiUZGsN8iCrT4GiGDCC7lR X-Received: by 10.42.70.133 with SMTP id f5mr10201974icj.5.1408371201684; Mon, 18 Aug 2014 07:13:21 -0700 (PDT) MIME-Version: 1.0 X-BeenThere: patchwork-forward@linaro.org Received: by 10.140.102.23 with SMTP id v23ls2354442qge.51.gmail; Mon, 18 Aug 2014 07:13:21 -0700 (PDT) X-Received: by 10.52.89.134 with SMTP id bo6mr216723vdb.79.1408371201386; Mon, 18 Aug 2014 07:13:21 -0700 (PDT) Received: from mail-vc0-f182.google.com (mail-vc0-f182.google.com [209.85.220.182]) by mx.google.com with ESMTPS id fy20si5520306vec.33.2014.08.18.07.13.21 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 18 Aug 2014 07:13:21 -0700 (PDT) Received-SPF: pass (google.com: domain of patch+caf_=patchwork-forward=linaro.org@linaro.org designates 209.85.220.182 as permitted sender) client-ip=209.85.220.182; Received: by mail-vc0-f182.google.com with SMTP id hy4so5896933vcb.27 for ; Mon, 18 Aug 2014 07:13:21 -0700 (PDT) X-Received: by 10.220.15.8 with SMTP id i8mr881637vca.45.1408371201310; Mon, 18 Aug 2014 07:13:21 -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 tc5csp155659vcb; Mon, 18 Aug 2014 07:13:20 -0700 (PDT) X-Received: by 10.180.102.40 with SMTP id fl8mr55314wib.17.1408371199645; Mon, 18 Aug 2014 07:13:19 -0700 (PDT) Received: from mail-wi0-f181.google.com (mail-wi0-f181.google.com [209.85.212.181]) by mx.google.com with ESMTPS id eo16si16754268wid.32.2014.08.18.07.13.19 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 18 Aug 2014 07:13:19 -0700 (PDT) Received-SPF: pass (google.com: domain of daniel.thompson@linaro.org designates 209.85.212.181 as permitted sender) client-ip=209.85.212.181; Received: by mail-wi0-f181.google.com with SMTP id bs8so3715750wib.14 for ; Mon, 18 Aug 2014 07:13:19 -0700 (PDT) X-Received: by 10.194.134.70 with SMTP id pi6mr43497699wjb.1.1408371199253; Mon, 18 Aug 2014 07:13:19 -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 pe6sm42575328wjb.38.2014.08.18.07.13.17 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 18 Aug 2014 07:13:18 -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 v9 08/16] irqchip: gic: Remove spin locks from eoi_irq Date: Mon, 18 Aug 2014 15:12:56 +0100 Message-Id: <1408371184-12576-9-git-send-email-daniel.thompson@linaro.org> X-Mailer: git-send-email 1.9.3 In-Reply-To: <1404979427-12943-1-git-send-email-daniel.thompson@linaro.org> References: <1404979427-12943-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.182 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