Bug 2148 - ACPI: No IRQ known ... - using IRQ 255
Summary: ACPI: No IRQ known ... - using IRQ 255
Status: CLOSED CODE_FIX
Alias: None
Product: ACPI
Classification: Unclassified
Component: Config-Interrupts (show other bugs)
Hardware: i386 Linux
: P2 low
Assignee: Len Brown
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-02-19 08:49 UTC by Bjarni R
Modified: 2024-05-10 12:41 UTC (History)
4 users (show)

See Also:
Kernel Version: 2.6.2, 2.6.3
Subsystem:
Regression: No
Bisected commit-id:


Attachments
the fix (518 bytes, patch)
2004-04-23 23:09 UTC, Len Brown
Details | Diff

Description Bjarni R 2004-02-19 08:49:50 UTC
The (dev->irq && dev->irq >= 0xF) comparison in the code snippet
below should read (dev->irq && dev->irq <= 0xF), if the comments
are correct.  This is taken from line 356 or so in drivers/acpi/pci_irq.c.

I haven't personally noticed any problems caused by this, but stumbled
over it when looking for a way to get my Libretto 100CT's CardBus interface
to give a IRQ to a USB card.

Relevant code:

        /*
         * No IRQ known to the ACPI subsystem - maybe the BIOS / 
         * driver reported one, then use it. Exit in any case.
         */
        if (!irq) {
                printk(KERN_WARNING PREFIX "No IRQ known for interrupt pin %c of
 device %s", ('A' + pin), pci_name(dev));
                /* Interrupt Line values above 0xF are forbidden */
                if (dev->irq && dev->irq >= 0xF) {
                        printk(" - using IRQ %d\n", dev->irq);
                        return_VALUE(dev->irq);
                }
                else {
                        printk("\n");
                        return_VALUE(0);
                }
        }
Comment 1 Shaohua 2004-02-19 16:49:43 UTC
For your cardbus IRQ issue, please try the patch in 
http://bugme.osdl.org/attachment.cgi?id=1629&action=view.
Comment 2 Len Brown 2004-04-23 23:09:06 UTC
Created attachment 2682 [details]
the fix

Comments were correct, code was incorrect.
Here's the fix -- and it works:

pci_link-0414 [26] acpi_pci_link_set	 : Link disabled
ACPI: Unable to set IRQ for PCI Interrupt Link [PRQ7] (likely buggy ACPI BIOS).
Aborting ACPI-based IRQ routing. Try pci=noacpi or acpi=off
 pci_irq-0262 [23] acpi_pci_irq_lookup	 : Invalid IRQ link routing entry
 pci_irq-0316 [22] acpi_pci_irq_derive	 : Unable to derive IRQ for device
0000:02:07.0
ACPI: No IRQ known for interrupt pin A of device 0000:02:07.0 - using IRQ 11
Comment 3 Len Brown 2004-05-11 23:24:30 UTC
closing 
shipped in 2.6.6 and on top of 2.4.27-pre2 

Note You need to log in before you can comment on or make changes to this bug.