From patchwork Mon Jun 13 06:39:41 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bryan Wu X-Patchwork-Id: 873952 Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) by demeter1.kernel.org (8.14.4/8.14.4) with ESMTP id p5D6fgI9016599 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Mon, 13 Jun 2011 06:42:03 GMT Received: from canuck.infradead.org ([2001:4978:20e::1]) by merlin.infradead.org with esmtps (Exim 4.76 #1 (Red Hat Linux)) id 1QW0q7-0003GQ-0J; Mon, 13 Jun 2011 06:41:35 +0000 Received: from localhost ([127.0.0.1] helo=canuck.infradead.org) by canuck.infradead.org with esmtp (Exim 4.76 #1 (Red Hat Linux)) id 1QW0q6-0001vu-J4; Mon, 13 Jun 2011 06:41:34 +0000 Received: from adelie.canonical.com ([91.189.90.139]) by canuck.infradead.org with esmtp (Exim 4.76 #1 (Red Hat Linux)) id 1QW0q3-0001vc-Jm for linux-arm-kernel@lists.infradead.org; Mon, 13 Jun 2011 06:41:32 +0000 Received: from youngberry.canonical.com ([91.189.89.112]) by adelie.canonical.com with esmtp (Exim 4.71 #1 (Debian)) id 1QW0q0-0003J6-R2; Mon, 13 Jun 2011 06:41:29 +0000 Received: from [222.65.92.83] (helo=canonical.com) by youngberry.canonical.com with esmtpsa (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1QW0pv-0002i3-8L; Mon, 13 Jun 2011 06:41:28 +0000 From: Bryan Wu To: linux-arm-kernel@lists.infradead.org, linux@arm.linux.org.uk, linus.walleij@linaro.org Subject: [PATCH 2/6] arm: footbridge: consolidation code of EBSA285 machine Date: Mon, 13 Jun 2011 14:39:41 +0800 Message-Id: <1307947185-5159-3-git-send-email-bryan.wu@canonical.com> X-Mailer: git-send-email 1.7.5 In-Reply-To: <1307947185-5159-1-git-send-email-bryan.wu@canonical.com> References: <1307947185-5159-1-git-send-email-bryan.wu@canonical.com> X-CRM114-Version: 20090807-BlameThorstenAndJenny ( TRE 0.7.6 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20110613_024131_773740_52F5D09E X-CRM114-Status: GOOD ( 13.22 ) X-Spam-Score: -2.3 (--) X-Spam-Report: SpamAssassin version 3.3.1 on canuck.infradead.org summary: Content analysis details: (-2.3 points) pts rule name description ---- ---------------------- -------------------------------------------------- -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at http://www.dnswl.org/, medium trust [91.189.90.139 listed in list.dnswl.org] -0.0 T_RP_MATCHES_RCVD Envelope sender domain matches handover relay domain X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.12 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 X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.6 (demeter1.kernel.org [140.211.167.41]); Mon, 13 Jun 2011 06:42:03 +0000 (UTC) move PCI code to board file Signed-off-by: Bryan Wu --- arch/arm/mach-footbridge/Makefile | 1 - arch/arm/mach-footbridge/ebsa285-pci.c | 48 -------------------------------- arch/arm/mach-footbridge/ebsa285.c | 38 +++++++++++++++++++++++++ 3 files changed, 38 insertions(+), 49 deletions(-) delete mode 100644 arch/arm/mach-footbridge/ebsa285-pci.c diff --git a/arch/arm/mach-footbridge/Makefile b/arch/arm/mach-footbridge/Makefile index e0a8b21..e051668 100644 --- a/arch/arm/mach-footbridge/Makefile +++ b/arch/arm/mach-footbridge/Makefile @@ -9,7 +9,6 @@ obj-m := obj-n := obj- := -pci-$(CONFIG_ARCH_EBSA285_HOST) += ebsa285-pci.o pci-$(CONFIG_ARCH_NETWINDER) += netwinder-pci.o pci-$(CONFIG_ARCH_PERSONAL_SERVER) += personal-pci.o diff --git a/arch/arm/mach-footbridge/ebsa285-pci.c b/arch/arm/mach-footbridge/ebsa285-pci.c deleted file mode 100644 index e5ab5bd..0000000 --- a/arch/arm/mach-footbridge/ebsa285-pci.c +++ /dev/null @@ -1,48 +0,0 @@ -/* - * linux/arch/arm/mach-footbridge/ebsa285-pci.c - * - * PCI bios-type initialisation for PCI machines - * - * Bits taken from various places. - */ -#include -#include -#include - -#include -#include -#include - -static int irqmap_ebsa285[] __initdata = { IRQ_IN3, IRQ_IN1, IRQ_IN0, IRQ_PCI }; - -static int __init ebsa285_map_irq(struct pci_dev *dev, u8 slot, u8 pin) -{ - if (dev->vendor == PCI_VENDOR_ID_CONTAQ && - dev->device == PCI_DEVICE_ID_CONTAQ_82C693) - switch (PCI_FUNC(dev->devfn)) { - case 1: return 14; - case 2: return 15; - case 3: return 12; - } - - return irqmap_ebsa285[(slot + pin) & 3]; -} - -static struct hw_pci ebsa285_pci __initdata = { - .swizzle = pci_std_swizzle, - .map_irq = ebsa285_map_irq, - .nr_controllers = 1, - .setup = dc21285_setup, - .scan = dc21285_scan_bus, - .preinit = dc21285_preinit, - .postinit = dc21285_postinit, -}; - -static int __init ebsa285_init_pci(void) -{ - if (machine_is_ebsa285()) - pci_common_init(&ebsa285_pci); - return 0; -} - -subsys_initcall(ebsa285_init_pci); diff --git a/arch/arm/mach-footbridge/ebsa285.c b/arch/arm/mach-footbridge/ebsa285.c index 2ef69ff..fc91c85 100644 --- a/arch/arm/mach-footbridge/ebsa285.c +++ b/arch/arm/mach-footbridge/ebsa285.c @@ -5,7 +5,11 @@ */ #include #include +#include +#include +#include +#include #include #include @@ -13,6 +17,40 @@ #include "common.h" +static int irqmap_ebsa285[] __initdata = { IRQ_IN3, IRQ_IN1, IRQ_IN0, IRQ_PCI }; + +static int __init ebsa285_map_irq(struct pci_dev *dev, u8 slot, u8 pin) +{ + if (dev->vendor == PCI_VENDOR_ID_CONTAQ && + dev->device == PCI_DEVICE_ID_CONTAQ_82C693) + switch (PCI_FUNC(dev->devfn)) { + case 1: return 14; + case 2: return 15; + case 3: return 12; + } + + return irqmap_ebsa285[(slot + pin) & 3]; +} + +static struct hw_pci ebsa285_pci __initdata = { + .swizzle = pci_std_swizzle, + .map_irq = ebsa285_map_irq, + .nr_controllers = 1, + .setup = dc21285_setup, + .scan = dc21285_scan_bus, + .preinit = dc21285_preinit, + .postinit = dc21285_postinit, +}; + +static int __init ebsa285_init_pci(void) +{ + if (machine_is_ebsa285()) + pci_common_init(&ebsa285_pci); + return 0; +} + +subsys_initcall(ebsa285_init_pci); + MACHINE_START(EBSA285, "EBSA285") /* Maintainer: Russell King */ .boot_params = 0x00000100,