lkml.org 
[lkml]   [2001]   [Dec]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: IRQ Routing Problem on ALi Chipset Laptop (HP Pavilion N5425)
From
Date
On Tue, 2001-12-11 at 02:14, Pavel Machek wrote:
> The patch should contain:
>
>
> > 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;
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> printk(KERN_ERR "$PIR table inconsistent; chipset dependend code told
> us interrupt is at %d, but irq mask is %lx\n", dev->irq, newirq);
>
> We should never ever workaround BIOS problem without complaining.

It may not be a bios problem. mask = (info->irq[pin].bitmap &
pcibios_irq_mask). So an IRQ might not match the mask because the user
specified a more restrictive mask than the $PIR table.

I suppose we could use a second variable (pir_mask?) that didn't get &'d
with pcibios_irq_mask to do the checks.

Ideas, anyone?

> Otherwise patch looks sane. Did you try submitting it to
> linus/marcelo?

Not yet. Wanted to do a bit more testing, especially considering the
pcmcia problems people have had. Do your pcmcia difficulties occur
without the patch, as well?

I'll test my 16-bit pcmcia modem/nic with my pcmcia scsi adapter, and
see if I get the same breakage.

Has anyone tried dual cardbus cards?

-Cory

-
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/

\
 
 \ /
  Last update: 2005-03-22 13:14    [W:0.133 / U:2.692 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site