• Grzegorz Janoszka's avatar
    [PATCH] arch/i386/pci/irq.c - new VIA chipsets (fwd) · 40d8b89b
    Grzegorz Janoszka authored
    I use 2.6.15.6 Linux kernel and found some problems. I have about 100
    Linux boxes (all with the same (binary the same) kernel). Last time I have
    upgraded all those boxes from 2.4.32 to 2.6.15.6 (first 2.6.15.1, next .2,
    .4 and .6) and I have found some problems on VIA based PC's. Probably the
    reason of this is that some VIA chipsets are unrecognized by IRQ router.
    
    In line 586 there is: /* FIXME: add new ones for 8233/5 */
    
    There were only a few of chipsets ID's there, some of my VIA chipsets were
    not present and kernel used default IRQ router.
    
    I have added three entries, so that the code looks like:
    
            case PCI_DEVICE_ID_VIA_82C596:
            case PCI_DEVICE_ID_VIA_82C686:
            case PCI_DEVICE_ID_VIA_8231:
            case PCI_DEVICE_ID_VIA_8233A:
            case PCI_DEVICE_ID_VIA_8235:
            case PCI_DEVICE_ID_VIA_8237:
            case PCI_DEVICE_ID_VIA_8237_SATA:
                    /* FIXME: add new ones for 8233/5 */
                    r->name = "VIA";
                    r->get = pirq_via_get;
                    r->set = pirq_via_set;
                    return 1;
            }
    
    The kernel goes fine but I haven't testes it for weeks, I'm just a moment
    after reboot :)
    One thing is different (better?):
    Using previus kernel I had:
    PCI: Via IRQ fixup for 0000:00:0f.1, from 255 to 0
    now I have:
    PCI: Via IRQ fixup for 0000:00:0f.1, from 255 to 11
    
    Maybe it is good idea to add there some more VIA chipsets?
    The ones I have added seem to be OK.
    
    From: Grzegorz Janoszka <Grzegorz@Janoszka.pl>
    Acked-by: default avatarMartin Mares <mj@ucw.cz>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
    40d8b89b
irq.c 31.7 KB