Re: [PATCH 1/7] add kernel cmdline option to disable pci-irq quirks

From: Stefan Assmann
Date: Tue Jun 03 2008 - 13:00:24 EST


Thomas Gleixner schrieb:
On Mon, 2 Jun 2008, Olaf Dabrunz wrote:
From: Olaf Dabrunz <od@xxxxxxx>

Add a switch to disable all boot interrupt quirks, using the parameter
nobootirqquirk.

This should be a parameter in the form of

pci=ioapicquirk

and not a separate and completely unintuitive thing.

Thanks,
tglx

Introducing 2 parameters then:
pci=ioapicreroute to enable rerouting of interrupts to the primary io-apic,
pci=noioapicquirk to disable all sorts of io-apic quirks.

This implies that disabling boot interrupts, on bridges where we know how to do it, will be enabled by default. I'd favor this solution because I can't think of any harm this could possibly cause. Boot interrupts shouldn't happen on systems that run in apic mode.
Signed-off-by: Olaf Dabrunz <od@xxxxxxx>
Signed-off-by: Stefan Assmann <sassmann@xxxxxxx>
---
drivers/pci/quirks.c | 15 +++++++++++++++
1 files changed, 15 insertions(+), 0 deletions(-)

diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
index dabb563..6245486 100644
--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
@@ -1363,6 +1363,21 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x2609, quirk_intel_pcie_pm);
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x260a, quirk_intel_pcie_pm);
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x260b, quirk_intel_pcie_pm);
+
+#ifdef CONFIG_X86_IO_APIC
+int nobootirqquirk __read_mostly = 0;
+
+int nobootirqquirk_setup(char *str)
+{
+ nobootirqquirk = 1;
+ printk(KERN_INFO "Boot IRQ quirk handling disabled\n");
+
+ return 1;
+}
+__setup("nobootirqquirk", nobootirqquirk_setup);
+#endif /* CONFIG_X86_IO_APIC */
+
+
/*
* Toshiba TC86C001 IDE controller reports the standard 8-byte BAR0 size
* but the PIO transfers won't work if BAR0 falls at the odd 8 bytes.
--
1.5.2.4

--
Olaf Dabrunz (od/odabrunz), SUSE Linux Products GmbH, N??rnberg

Stefan

--
Stefan Assmann | SUSE LINUX Products GmbH
Software Engineer | Maxfeldstr. 5, D-90409 Nuernberg
Mail : sassmann@xxxxxxx | GF: Markus Rex, HRB 16746 (AG Nuernberg)

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/