Commit-ID:  8a3e533df17f821a4d25dd2969d2f90d7c168b46
Gitweb:     http://git.kernel.org/tip/8a3e533df17f821a4d25dd2969d2f90d7c168b46
Author:     Jiang Liu <jiang....@linux.intel.com>
AuthorDate: Mon, 9 Jun 2014 16:20:09 +0800
Committer:  Thomas Gleixner <t...@linutronix.de>
CommitDate: Sat, 21 Jun 2014 23:05:44 +0200

x86, irq, SFI: Release IOAPIC pin when PCI device is disabled

Release IOAPIC pin associated with PCI device when the PCI device
is disabled.

Signed-off-by: Jiang Liu <jiang....@linux.intel.com>
Cc: Konrad Rzeszutek Wilk <konrad.w...@oracle.com>
Cc: Tony Luck <tony.l...@intel.com>
Cc: Joerg Roedel <j...@8bytes.org>
Cc: Paul Gortmaker <paul.gortma...@windriver.com>
Cc: Greg Kroah-Hartman <gre...@linuxfoundation.org>
Cc: Benjamin Herrenschmidt <b...@kernel.crashing.org>
Cc: Grant Likely <grant.lik...@linaro.org>
Cc: Rafael J. Wysocki <r...@rjwysocki.net>
Cc: Bjorn Helgaas <bhelg...@google.com>
Cc: Randy Dunlap <rdun...@infradead.org>
Cc: Yinghai Lu <ying...@kernel.org>
Link: 
http://lkml.kernel.org/r/1402302011-23642-41-git-send-email-jiang....@linux.intel.com
Signed-off-by: Thomas Gleixner <t...@linutronix.de>
---
 arch/x86/pci/intel_mid_pci.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/arch/x86/pci/intel_mid_pci.c b/arch/x86/pci/intel_mid_pci.c
index 337d165..09fece3 100644
--- a/arch/x86/pci/intel_mid_pci.c
+++ b/arch/x86/pci/intel_mid_pci.c
@@ -227,6 +227,12 @@ static int intel_mid_pci_irq_enable(struct pci_dev *dev)
        return 0;
 }
 
+static void intel_mid_pci_irq_disable(struct pci_dev *dev)
+{
+       if (dev->irq > 0)
+               mp_unmap_irq(dev->irq);
+}
+
 struct pci_ops intel_mid_pci_ops = {
        .read = pci_read,
        .write = pci_write,
@@ -243,6 +249,7 @@ int __init intel_mid_pci_init(void)
        pr_info("Intel MID platform detected, using MID PCI ops\n");
        pci_mmcfg_late_init();
        pcibios_enable_irq = intel_mid_pci_irq_enable;
+       pcibios_disable_irq = intel_mid_pci_irq_disable;
        pci_root_ops = intel_mid_pci_ops;
        pci_soc_mode = 1;
        /* Continue with standard init */
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to