From: Olaf Dabrunz <od@suse.de>
To: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@elte.hu>, "H. Peter Anvin" <hpa@zytor.com>,
Jon Masters <jonathan@jonmasters.org>, Olaf Dabrunz <od@suse.de>,
Stefan Assmann <sassmann@suse.de>,
linux-kernel@vger.kernel.org
Subject: [PATCH 0/7] Boot IRQ quirks and rerouting
Date: Mon, 2 Jun 2008 14:45:00 +0200 [thread overview]
Message-ID: <12124107071847-git-send-email-od@suse.de> (raw)
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1671 bytes --]
These patches are against linux-2.6-tip, auto-x86-next.
When IRQ lines on secondary or higher IO-APICs are masked (as done by
RT and others), many chipsets redirect IRQs on this line to the PIC, and
thereby regularly to the first IO-APIC in the system. This causes
spurious interrupts and can lead to disabled IRQ lines.
Disabling this "boot interrupt" (as it is mostly used to supply all
IRQs to the legacy PIC during boot) is chipset-specific, and not
possible for all chips. This patchset disables the boot interrupt on
chipsets where this is possible and where we know how to do it.
When disabling the boot interrupt is not possible, the patches tell the
IRQ code to always use the redirected interrupt line (on the first
IO-APIC) instead of the "original" line on the secondary (tertiary ...)
IO-APIC. The original line remains masked, and IRQs always appear on
the boot interrupt line on the first IO-APIC instead.
Two new boot parameters control the quirks and are explained in the
patches: nobootirqquirk,
bootirqquirk=0x<vendor>,0x<device>,<quirk_variant>. "noapic" also sets
nobootirqquirk.
All patches are co-authored by Stefan Assmann and Olaf Dabrunz. But
according to Documentation/SubmittingPatches, the patch submission format
allows only for one author.
drivers/acpi/pci_irq.c | 63 ++++++++
drivers/pci/quirks.c | 339 ++++++++++++++++++++++++++++++++++++++++++++-
include/asm-x86/io_apic.h | 4
include/linux/pci.h | 2
include/linux/pci_ids.h | 6
include/linux/pci_quirks.h | 29 +++
6 files changed, 435 insertions(+), 8 deletions(-)
--
Olaf Dabrunz (od/odabrunz), SUSE Linux Products GmbH, Nürnberg
next reply other threads:[~2008-06-02 13:52 UTC|newest]
Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-06-02 12:45 Olaf Dabrunz [this message]
2008-06-02 12:45 ` [PATCH 1/7] add kernel cmdline option to disable pci-irq quirks Olaf Dabrunz
2008-06-03 10:13 ` Thomas Gleixner
2008-06-03 17:00 ` Stefan Assmann
2008-06-02 12:45 ` [PATCH 2/7] reroute PCI interrupt to legacy boot interrupt equivalent Olaf Dabrunz
2008-06-03 10:37 ` Thomas Gleixner
2008-06-03 22:59 ` Randy Dunlap
2008-06-12 14:14 ` Olaf Dabrunz
2008-06-02 12:45 ` [PATCH 3/7] disable legacy boot interrupt generation Olaf Dabrunz
2008-06-03 10:40 ` Thomas Gleixner
2008-06-02 12:45 ` [PATCH 4/7] disable broadcomm " Olaf Dabrunz
2008-06-03 10:46 ` Thomas Gleixner
2008-06-03 15:46 ` Jon Masters
2008-06-03 15:59 ` Olaf Dabrunz
2008-06-03 16:05 ` Jon Masters
2008-06-03 17:27 ` Olaf Dabrunz
2008-06-02 12:45 ` [PATCH 5/7] disable AMD/ATI " Olaf Dabrunz
2008-06-03 10:54 ` Thomas Gleixner
2008-06-12 14:14 ` Olaf Dabrunz
2008-06-02 12:45 ` [PATCH 6/7] disable pci legacy boot irq quirks on noapic boot Olaf Dabrunz
2008-06-03 10:55 ` Thomas Gleixner
2008-06-02 12:45 ` [PATCH 7/7] bootirqquirk= parameter to enable bootirq quirks for additional chips Olaf Dabrunz
2008-06-03 10:56 ` Thomas Gleixner
2008-06-04 10:06 ` Olaf Dabrunz
2008-06-02 16:43 ` [PATCH 0/7] Boot IRQ quirks and rerouting Olaf Dabrunz
2008-06-03 10:11 ` Thomas Gleixner
2008-06-03 17:08 ` Olaf Dabrunz
2008-06-03 10:21 ` Olaf Dabrunz
2008-06-03 15:52 ` Jon Masters
2008-06-03 16:17 ` Stefan Assmann
2008-06-03 16:56 ` Olaf Dabrunz
2008-06-04 2:35 ` Eric W. Biederman
2008-06-04 9:49 ` Stefan Assmann
2008-06-04 10:45 ` Eric W. Biederman
2008-06-04 11:33 ` Stefan Assmann
2008-06-04 15:52 ` Maciej W. Rozycki
2008-06-04 16:08 ` Thomas Gleixner
2008-06-04 17:18 ` Maciej W. Rozycki
2008-06-04 17:33 ` Thomas Gleixner
2008-06-04 17:53 ` Maciej W. Rozycki
2008-06-04 18:35 ` Thomas Gleixner
2008-06-04 18:51 ` Maciej W. Rozycki
2010-02-16 0:30 ` Yuhong Bao
2008-06-04 18:57 ` Jon Masters
2008-06-04 19:19 ` Maciej W. Rozycki
2008-06-04 19:59 ` Jon Masters
2008-06-04 22:07 ` Maciej W. Rozycki
2008-06-04 22:27 ` Jon Masters
2008-06-04 23:08 ` Maciej W. Rozycki
2008-06-04 11:37 ` Olaf Dabrunz
2008-06-04 18:44 ` Jon Masters
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=12124107071847-git-send-email-od@suse.de \
--to=od@suse.de \
--cc=hpa@zytor.com \
--cc=jonathan@jonmasters.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=sassmann@suse.de \
--cc=tglx@linutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox