From patchwork Thu Jan 3 17:54:17 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rob Herring X-Patchwork-Id: 1928571 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 EE0713FE37 for ; Thu, 3 Jan 2013 18:00:09 +0000 (UTC) Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.76 #1 (Red Hat Linux)) id 1Tqp1o-00085t-Ep; Thu, 03 Jan 2013 17:56:28 +0000 Received: from mail-yh0-f51.google.com ([209.85.213.51]) by merlin.infradead.org with esmtps (Exim 4.76 #1 (Red Hat Linux)) id 1Tqp0P-0007cs-Bl for linux-arm-kernel@lists.infradead.org; Thu, 03 Jan 2013 17:55:07 +0000 Received: by mail-yh0-f51.google.com with SMTP id f73so624342yha.38 for ; Thu, 03 Jan 2013 09:55:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-received:from:to:cc:subject:date:message-id:x-mailer:in-reply-to :references; bh=BzaB7Pr/A37XUK224j/TdHGTktLvSJxgAmciJDVXDIQ=; b=DsKhsjR5xCXn0+hgVlhsSjDTGKn01rEBELErujm7DMZdFOa3pS06RQzBlT63ny1utd jDvjhGmAfRI7hqLjltG4V+oQVmieRDfoYnBEZ3jHQCzAJWpeqE/TGFFZk6cKK9ac/TO8 kr5L9PWd3f8Y/WxMkPJSAzuljmkr7thDDd+6yizjL/qIoLNunZfK1SNyIy4HcxnLj0Pm rv/Cu/fRCjOXgjU4LACihl5/8J0hxxrTFk18drCiBYab2QGGiz8bEvSxrcgKIZifhXux jT0NEZp5HsSnWa2KMHS+p8mTShoPMDfw6+RbXIt2QuctORudoiISHPoEglK+Zz0CJMTU kHXg== X-Received: by 10.236.71.33 with SMTP id q21mr51737362yhd.60.1357235700268; Thu, 03 Jan 2013 09:55:00 -0800 (PST) Received: from rob-laptop.calxeda.com ([173.226.190.120]) by mx.google.com with ESMTPS id q4sm44227297anp.18.2013.01.03.09.54.57 (version=SSLv3 cipher=OTHER); Thu, 03 Jan 2013 09:54:59 -0800 (PST) From: Rob Herring To: linux-arm-kernel@lists.infradead.org Subject: [PATCH v4 08/19] irqchip: Move ARM GIC to drivers/irqchip Date: Thu, 3 Jan 2013 11:54:17 -0600 Message-Id: <1357235668-9450-9-git-send-email-robherring2@gmail.com> X-Mailer: git-send-email 1.7.10.4 In-Reply-To: <1357235668-9450-1-git-send-email-robherring2@gmail.com> References: <1357235668-9450-1-git-send-email-robherring2@gmail.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20130103_125502_294411_0D205290 X-CRM114-Status: GOOD ( 12.46 ) 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.213.51 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@free-electrons.com, Russell King , Arnd Bergmann , 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 | 3 ++- arch/arm/common/gic.c => drivers/irqchip/irq-gic.c | 7 +++++++ 5 files changed, 17 insertions(+), 10 deletions(-) rename arch/arm/common/gic.c => drivers/irqchip/irq-gic.c (98%) 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 93dfd8f..98f30b0 100644 --- a/drivers/irqchip/Kconfig +++ b/drivers/irqchip/Kconfig @@ -2,6 +2,14 @@ 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 + config VERSATILE_FPGA_IRQ bool select IRQ_DOMAIN diff --git a/drivers/irqchip/Makefile b/drivers/irqchip/Makefile index 29b78c9..f2a9a07 100644 --- a/drivers/irqchip/Makefile +++ b/drivers/irqchip/Makefile @@ -2,5 +2,6 @@ obj-$(CONFIG_IRQCHIP) += irqchip.o obj-$(CONFIG_ARCH_BCM2835) += irq-bcm2835.o obj-$(CONFIG_ARCH_SUNXI) += irq-sunxi.o -obj-$(CONFIG_VERSATILE_FPGA_IRQ) += irq-versatile-fpga.o obj-$(CONFIG_ARCH_SPEAR3XX) += spear-shirq.o +obj-$(CONFIG_ARM_GIC) += irq-gic.o +obj-$(CONFIG_VERSATILE_FPGA_IRQ) += irq-versatile-fpga.o diff --git a/arch/arm/common/gic.c b/drivers/irqchip/irq-gic.c similarity index 98% rename from arch/arm/common/gic.c rename to drivers/irqchip/irq-gic.c index 90eebfea..dc511a4 100644 --- a/arch/arm/common/gic.c +++ b/drivers/irqchip/irq-gic.c @@ -45,6 +45,8 @@ #include #include +#include "irqchip.h" + union gic_base { void __iomem *common_base; void __percpu __iomem **percpu_base; @@ -814,4 +816,9 @@ int __init gic_of_init(struct device_node *node, struct device_node *parent) gic_cnt++; return 0; } +IRQCHIP_DECLARE(cortex_a15_gic, "arm,cortex-a15-gic", gic_of_init); +IRQCHIP_DECLARE(cortex_a9_gic, "arm,cortex-a9-gic", gic_of_init); +IRQCHIP_DECLARE(msm_8660_qgic, "qcom,msm-8660-qgic", gic_of_init); +IRQCHIP_DECLARE(msm_qgic2, "qcom,msm-qgic2", gic_of_init); + #endif