Commit 47efb401 authored by Dave Jones's avatar Dave Jones

[AGPGART] Handle the "KT400 in disguise as a KT266" case.

parent ed4c75a3
...@@ -96,6 +96,24 @@ static struct gatt_mask via_generic_masks[] = ...@@ -96,6 +96,24 @@ static struct gatt_mask via_generic_masks[] =
static int __init via_generic_setup (struct pci_dev *pdev) static int __init via_generic_setup (struct pci_dev *pdev)
{ {
u8 reg;
/* Garg, there are KT400s with KT266 IDs. */
if (pdev->device == PCI_DEVICE_ID_VIA_8367_0) {
/* Is there a KT400 subsystem ? */
if (pdev->subsystem_device==PCI_DEVICE_ID_VIA_8377_0) {
pci_read_config_byte(pdev, VIA_AGPSEL, &reg);
/* Check AGP compatability mode. */
if ((reg & (1<<1))==0) {
printk ("KT400 in AGP3.0 mode. Use via-kt400 driver\n");
return -ENODEV;
}
printk (KERN_INFO PFX "Found KT400 in disguise as a KT266.\n");
}
}
agp_bridge.masks = via_generic_masks; agp_bridge.masks = via_generic_masks;
agp_bridge.aperture_sizes = (void *) via_generic_sizes; agp_bridge.aperture_sizes = (void *) via_generic_sizes;
agp_bridge.size_type = U8_APER_SIZE; agp_bridge.size_type = U8_APER_SIZE;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment