ACPI: stop complaints about interrupt link End Tags and blank IRQ descriptors
authorBjorn Helgaas <bjorn.helgaas@hp.com>
Tue, 15 Jul 2008 15:42:57 +0000 (09:42 -0600)
committerAndi Kleen <ak@linux.intel.com>
Thu, 17 Jul 2008 23:41:49 +0000 (01:41 +0200)
commit4a5e3638b11978262ab76bbb2062e57fefaaedba
treefa7d8d7097f9a7bee0ec21b81d019edd77579041
parent5b664cb235e97afbf34db9c4d77f08ebd725335e
ACPI: stop complaints about interrupt link End Tags and blank IRQ descriptors

Silently ignore _PRS End Tags.  We already ignore Start Dependent Functions in
_PRS, and we already ignore End Tags in _CRS, so we might as well ignore End
Tags in _PRS as well.

Silently ignore _PRS IRQ descriptors that mention no interrupts.  The spec
allows this (section 6.4.2.1 in ACPI 3.0b spec), and it probably means the
interrupt link can't be configured at all.

This patch doesn't change any functional behavior; it just removes confusing
complaints like these:

    ACPI: Blank IRQ resource
    ACPI: Resource is not an IRQ entry

when parsing _PRS data "23 00 00 18 79 00" from an IBM xSeries 335 dual
Pentium IV Xeon 2.40 GHz machine.  For more details, see
    http://bugzilla.kernel.org/show_bug.cgi?id=11049

The "23 00 00 18" part is a three-byte-long small IRQ resource with no bits set
in the IRQ mask ("00 00"), and level-triggered, active low, shareable ("18").

The "79 00" is an End Tag (type 0x7).  It is superfluous since there is no
Start Dependent Function tag and there are no resources after it, but it is
harmless.

Thanks to Gabriele Trombetti <g.trombetti.lkrnl1213@logicschema.com>
(aka Kurk) for reporting this and testing the patch.

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Andi Kleen <ak@linux.intel.com>
drivers/acpi/pci_link.c