I use PCI Rage128 cards which are working fine. 

I suspect it is this code from radeon_drv.c. There is probably
something wrong with card's BIOS or whatever and it is saying that it
is an AGP card when it is really a PCI one.  We used to specify this
manually in xconfig but now DRM code does it automatically. Fix is
probably to add a special case on the PCI_ID of the card that is
failing.

        /* There are signatures in BIOS and PCI-SSID for a PCI card,
but they are not very reliable.
        Following detection method works for all cards tested so far.
        Note, checking AGP_ENABLE bit after drmAgpEnable call can also
give the correct result.
        However, calling drmAgpEnable on a PCI card can cause some
strange lockup when the server
        restarts next time.
        */
        pci_read_config_dword(dev->pdev, RADEON_AGP_COMMAND_PCI_CONFIG, &save);
        pci_write_config_dword(dev->pdev, RADEON_AGP_COMMAND_PCI_CONFIG,
                               save | RADEON_AGP_ENABLE);
        pci_read_config_dword(dev->pdev, RADEON_AGP_COMMAND_PCI_CONFIG, &temp);
        if (temp & RADEON_AGP_ENABLE)
                dev_priv->flags |= CHIP_IS_AGP;
        DRM_DEBUG("%s card detected\n",
                  ((dev_priv->flags & CHIP_IS_AGP) ? "AGP" : "PCI"));
        pci_write_config_dword(dev->pdev, RADEON_AGP_COMMAND_PCI_CONFIG, save);



-- 
Jon Smirl
[EMAIL PROTECTED]
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to