From patchwork Wed Oct 31 14:58:35 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rob Herring X-Patchwork-Id: 1679461 Return-Path: X-Original-To: patchwork-linux-arm@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork2.kernel.org Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) by patchwork2.kernel.org (Postfix) with ESMTP id CCC47DF264 for ; Wed, 31 Oct 2012 15:02:19 +0000 (UTC) Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.76 #1 (Red Hat Linux)) id 1TTZlg-0000rO-Cx; Wed, 31 Oct 2012 14:59:44 +0000 Received: from mail-bk0-f49.google.com ([209.85.214.49]) by merlin.infradead.org with esmtps (Exim 4.76 #1 (Red Hat Linux)) id 1TTZlX-0000jK-SP for linux-arm-kernel@lists.infradead.org; Wed, 31 Oct 2012 14:59:37 +0000 Received: by mail-bk0-f49.google.com with SMTP id j4so666651bkw.36 for ; Wed, 31 Oct 2012 07:59:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:x-mailer:in-reply-to:references; bh=aYolgICtliO3oh6Apa64vvHAs7YnT65bms6L82oKeNg=; b=uMONdBJsOtwKbzUB8675uDinKWq0ujto8yMkRBTssHvCSMu7y4y/seyCVLskHP/y2P TPqVGwpxbP3sjuc8/0Qz/ruvWzHEIOlOCL9tL6S61gJwCXzfg6o39PaN1cG8wn6ntCqD jQZXrJ/dvBGA3vjYoO1QURfvFTxtyR/qV9ZAwCf648Ek1Z6q1gDJMNKr8G6LiOIejduv BEk8SNFN4/Dy8O0uoMd8SS/crhS5lZ/osAleXHzixX3Nf9hmVWZVwEww605mev0SLIYK fT3/jccV1OX+GNcuSj189SsimjYqztFjBNp6MMx6va1UKK4ZAerlGzU9CZxQB9uA2Uwq lnoQ== Received: by 10.204.8.194 with SMTP id i2mr11070596bki.117.1351695575490; Wed, 31 Oct 2012 07:59:35 -0700 (PDT) Received: from localhost.localdomain ([91.224.175.20]) by mx.google.com with ESMTPS id e3sm3594523bks.7.2012.10.31.07.59.10 (version=SSLv3 cipher=OTHER); Wed, 31 Oct 2012 07:59:15 -0700 (PDT) From: Rob Herring To: linux-arm-kernel@lists.infradead.org Subject: [PATCH v2 3/5] irqchip: Move ARM GIC to drivers/irqchip Date: Wed, 31 Oct 2012 09:58:35 -0500 Message-Id: <1351695517-5636-4-git-send-email-robherring2@gmail.com> X-Mailer: git-send-email 1.7.10.4 In-Reply-To: <1351695517-5636-1-git-send-email-robherring2@gmail.com> References: <1351695517-5636-1-git-send-email-robherring2@gmail.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20121031_105936_178299_2051192D X-CRM114-Status: GOOD ( 15.15 ) X-Spam-Score: -2.5 (--) X-Spam-Report: SpamAssassin version 3.3.2 on merlin.infradead.org summary: Content analysis details: (-2.5 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/, low trust [209.85.214.49 listed in list.dnswl.org] 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (robherring2[at]gmail.com) -0.0 SPF_PASS SPF: sender matches SPF record 0.2 FREEMAIL_ENVFROM_END_DIGIT Envelope-from freemail username ends in digit (robherring2[at]gmail.com) -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature Cc: Thomas Petazzoni , Russell King , Arnd Bergmann , catalin.marinas@arm.com, Rob Herring , Olof Johansson , Thomas Gleixner 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: , MIME-Version: 1.0 Sender: linux-arm-kernel-bounces@lists.infradead.org Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org From: Rob Herring Now that we have drivers/irqchip, move GIC irqchip to drivers/irqchip. This is necessary to share the GIC with arm and arm64. Signed-off-by: Rob Herring Cc: Russell King Cc: Thomas Gleixner --- arch/arm/common/Kconfig | 8 -------- arch/arm/common/Makefile | 1 - drivers/irqchip/Kconfig | 8 ++++++++ drivers/irqchip/Makefile | 1 + arch/arm/common/gic.c => drivers/irqchip/irq-gic.c | 0 drivers/irqchip/irqchip.c | 10 ++++++++++ drivers/irqchip/irqchip.h | 1 + 7 files changed, 20 insertions(+), 9 deletions(-) rename arch/arm/common/gic.c => drivers/irqchip/irq-gic.c (100%) diff --git a/arch/arm/common/Kconfig b/arch/arm/common/Kconfig index 45ceeb0..7bf52b2 100644 --- a/arch/arm/common/Kconfig +++ b/arch/arm/common/Kconfig @@ -1,11 +1,3 @@ -config ARM_GIC - bool - select IRQ_DOMAIN - select MULTI_IRQ_HANDLER - -config GIC_NON_BANKED - bool - config ARM_VIC bool select IRQ_DOMAIN diff --git a/arch/arm/common/Makefile b/arch/arm/common/Makefile index e8a4e58..4104b82 100644 --- a/arch/arm/common/Makefile +++ b/arch/arm/common/Makefile @@ -2,7 +2,6 @@ # Makefile for the linux kernel. # -obj-$(CONFIG_ARM_GIC) += gic.o obj-$(CONFIG_ARM_VIC) += vic.o obj-$(CONFIG_ICST) += icst.o obj-$(CONFIG_SA1111) += sa1111.o diff --git a/drivers/irqchip/Kconfig b/drivers/irqchip/Kconfig index 88b0929..2d7f350 100644 --- a/drivers/irqchip/Kconfig +++ b/drivers/irqchip/Kconfig @@ -1,3 +1,11 @@ config IRQCHIP def_bool y depends on OF_IRQ + +config ARM_GIC + bool + select IRQ_DOMAIN + select MULTI_IRQ_HANDLER + +config GIC_NON_BANKED + bool diff --git a/drivers/irqchip/Makefile b/drivers/irqchip/Makefile index 5148ffd..94118db 100644 --- a/drivers/irqchip/Makefile +++ b/drivers/irqchip/Makefile @@ -1,3 +1,4 @@ obj-$(CONFIG_IRQCHIP) += irqchip.o obj-$(CONFIG_ARCH_BCM2835) += irq-bcm2835.o obj-$(CONFIG_ARCH_MVEBU) += irq-armada-370-xp.o +obj-$(CONFIG_ARM_GIC) += irq-gic.o diff --git a/arch/arm/common/gic.c b/drivers/irqchip/irq-gic.c similarity index 100% rename from arch/arm/common/gic.c rename to drivers/irqchip/irq-gic.c diff --git a/drivers/irqchip/irqchip.c b/drivers/irqchip/irqchip.c index f36d423..3f37397 100644 --- a/drivers/irqchip/irqchip.c +++ b/drivers/irqchip/irqchip.c @@ -14,6 +14,16 @@ #include "irqchip.h" static const struct of_device_id irqchip_of_match[] __initconst = { +#ifdef CONFIG_ARM_GIC + { + .compatible = "arm,cortex-a15-gic", + .data = gic_of_init, + }, + { + .compatible = "arm,cortex-a9-gic", + .data = gic_of_init, + }, +#endif #ifdef CONFIG_ARCH_BCM2835 { .compatible = "brcm,bcm2835-armctrl-ic", diff --git a/drivers/irqchip/irqchip.h b/drivers/irqchip/irqchip.h index 0a0d7af..62773ab3 100644 --- a/drivers/irqchip/irqchip.h +++ b/drivers/irqchip/irqchip.h @@ -14,5 +14,6 @@ int bcm2835_irqchip_init(struct device_node *node, struct device_node *parent); int armada_370_xp_mpic_of_init(struct device_node *node, struct device_node *parent); +int gic_of_init(struct device_node *node, struct device_node *parent); #endif