Messages in this thread |  | | | Date | Mon, 10 Dec 2001 12:03:30 +0100 | | From | Pavel Machek <> | | Subject | Re: IRQ Routing Problem on ALi Chipset Laptop (HP Pavilion N5425) |
| |
Hi!
> > Hey, this gross hack fixed USB on HP OmniBook xe3. Good! (Perhaps you > > know what interrupt is right for maestro3, also on omnibook? ;-). > > On my Pavilion (and the other 5400's as far as I can tell), maestro's on > irq 5. Wanna send me a "dump_pirq" and a "lspci -vvvxxx"? Could you try > the patch below (inspired by/stolen from Kai Germaschewski)? Also, the > newest acpi patch will print out the acpi irq routing table - might have > your info. You can tell if the patch below had any effect because it > will say it ASSIGNED IRQ XX instead of FOUND.
lspci attached to another mail.
This patch makes ohci work for me, but maestro is still broken.
Pavel > The "honor the irq mask" approach (works on my machine): > --- /home/cbell/linux-2.4/arch/i386/kernel/pci-irq.c Fri Dec 7 01:51:41 2001 > +++ /home/cbell/linux-2.4-test/arch/i386/kernel/pci-irq.c Sat Dec 8 21:04:37 2001 > @@ -581,6 +581,7 @@ > * reported by the device if possible. > */ > newirq = dev->irq; > + if (!((1 << newirq) & mask)) newirq = 0; > if (!newirq && assign) { > for (i = 0; i < 16; i++) { > if (!(mask & (1 << i))) > @@ -599,7 +600,7 @@ > irq = pirq & 0xf; > DBG(" -> hardcoded IRQ %d\n", irq); > msg = "Hardcoded"; > - } else if (r->get && (irq = r->get(pirq_router_dev, dev, pirq))) { > + } else if (r->get && (irq = r->get(pirq_router_dev, dev, pirq) && ((1 << irq) & mask))) { > DBG(" -> got IRQ %d\n", irq); > msg = "Found"; > } else if (newirq && r->set && (dev->class >> 8) != PCI_CLASS_DISPLAY_VGA) { > @@ -633,7 +634,7 @@ > continue; > if (info->irq[pin].link == pirq) { > /* We refuse to override the dev->irq information. Give a warning! */ > - if (dev2->irq && dev2->irq != irq) { > + if (dev2->irq && dev2->irq != irq && ((1 << dev2->irq) & mask)) { > printk(KERN_INFO "IRQ routing conflict for %s, have irq %d, want irq %d\n", > dev2->slot_name, dev2->irq, irq); > continue;
-- "I do not steal MS software. It is not worth it." -- Pavel Kankovsky - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |