From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bjorn Helgaas Subject: [PATCH 00/12] PCI: unify P2P bridge INTx swizzling Date: Tue, 09 Dec 2008 16:11:36 -0700 Message-ID: <20081209231037.18153.86962.stgit@bob.kio> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Return-path: Received: from g1t0029.austin.hp.com ([15.216.28.36]:35124 "EHLO g1t0029.austin.hp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754131AbYLIXLk (ORCPT ); Tue, 9 Dec 2008 18:11:40 -0500 Sender: linux-arch-owner@vger.kernel.org List-ID: To: Jesse Barnes Cc: linux-pci@vger.kernel.org, linux-arch@vger.kernel.org, Ivan Kokshaysky , Russell King , Ralf Baechle , Kyle McMartin , Matthew Wilcox , Grant Grundler , Paul Mackerras , Benjamin Herrenschmidt , Paul Mundt , Thomas Gleixner , Ingo Molnar , hpa@zytor.com This series adds a pci_swizzle_interrupt_pin() function in the PCI core. Most architectures currently implement this independently. After this series, many of the callers of pci_swizzle_interrupt_pin() follow a similar pattern. I'd like to consolidate those callers, too, but I haven't started that yet. One strange thing I'd like to understand eventually is why the swizzle in acpi_pci_irq_derive() does something special for CardBus bridges, while no other architecture does. Comments welcome. These patches have been compile-tested on: alpha arm ia64 mips powerpc (ppc64) sh x86 (32-bit) x86 (64-bit) I've boot-tested these architectures: ia64 x86 (32-bit) I haven't compiled parisc for want of a cross-compiler. Bjorn --- Bjorn Helgaas (12): PCI: x86: use generic pci_swizzle_interrupt_pin() PCI: sh: use generic pci_swizzle_interrupt_pin() PCI: powerpc: use generic pci_swizzle_interrupt_pin() PCI: parisc: use generic pci_swizzle_interrupt_pin() PCI: mips: use generic pci_swizzle_interrupt_pin() PCI: arm: use generic pci_swizzle_interrupt_pin() PCI: alpha: use generic pci_swizzle_interrupt_pin() PCI: add pci_swizzle_interrupt_pin() x86/PCI: minor logic simplications x86/PCI: use config space encoding for interrupt pins PCI: use config space encoding in pci_get_interrupt_pin() PCI Hotplug: cpqphp: use config space PCI interrupt pin encoding arch/alpha/kernel/pci.c | 2 + arch/alpha/kernel/pci_impl.h | 9 +----- arch/alpha/kernel/sys_dp264.c | 2 + arch/alpha/kernel/sys_eiger.c | 2 + arch/alpha/kernel/sys_miata.c | 2 + arch/alpha/kernel/sys_noritake.c | 2 + arch/alpha/kernel/sys_ruffian.c | 2 + arch/alpha/kernel/sys_sable.c | 2 + arch/arm/kernel/bios32.c | 6 ++-- arch/arm/mach-integrator/pci.c | 11 +------- arch/mips/pci/pci-ip27.c | 6 ---- arch/mips/pci/pci.c | 9 +----- arch/powerpc/kernel/prom_parse.c | 7 +---- arch/sh/drivers/pci/ops-cayman.c | 9 +----- arch/sh/drivers/pci/pci.c | 7 +---- arch/x86/pci/irq.c | 54 +++++++++++++++++-------------------- arch/x86/pci/visws.c | 7 +---- drivers/parisc/dino.c | 4 +-- drivers/parisc/iosapic.c | 3 +- drivers/pci/hotplug/cpqphp_ctrl.c | 4 +-- drivers/pci/hotplug/cpqphp_pci.c | 2 + drivers/pci/pci.c | 10 +++++-- include/linux/pci.h | 1 + 23 files changed, 60 insertions(+), 103 deletions(-) -- Signature