Re: VIA Northing workaround /causing/ problems

Denis Vlasenko
2002-02-04T12:49:28Z

On 3 February 2002 02:40, Steven Walter wrote:
> I recently upgraded my kernel from 2.4.10-pre6 to 2.4.18-pre2. After
> doing so, X acted extremely weird; whenever just about anything
> happened, lines would appear across the screen, almost like static.
>
> After playing around with a few config options that I'd changed, with no
> results, I noticed the message about the VIA northbridge bug in dmesg.
> I commented out the line listing this chipset in pci-pc.c, recompiled,
> and sure enough that fixed the problem!
>
> This board is based on the KT33 chipset. If anyone would like more
> information, email me.

Can you play with it a bit more?
Go to that file, uncomment it back, fiddle with
pci_fixup_via_northbridge_bug(): try to clear only bit 7,
then only 7 and 6 and see which cause it...
Make it print reg#, old, new contents:
...
printk("Trying to stomp on VIA Northbridge bug: [%02x] %02x->%02x\n", where, v, v & 0x1f);
...
etc.
Original function for your reference:

static void __init pci_fixup_via_northbridge_bug(struct pci_dev *d)
{
u8 v;
int where = 0x55;
if (d->device == PCI_DEVICE_ID_VIA_8367_0) {
where = 0x95; /* the memory write queue timer register is
different for the kt266x's: 0x95 not 0x55 */
}
pci_read_config_byte(d, where, &v);
if (v & 0xe0) {
printk("Trying to stomp on VIA Northbridge bug...\n");
v &= 0x1f; /* clear bits 5, 6, 7 */
pci_write_config_byte(d, where, v);
}
}
--
vda