fix pci overriding from userspace
authorDave Airlie <airlied@linux.ie>
Fri, 30 Sep 2005 06:35:09 +0000 (06:35 +0000)
committerDave Airlie <airlied@linux.ie>
Fri, 30 Sep 2005 06:35:09 +0000 (06:35 +0000)
shared-core/radeon_cp.c
shared-core/radeon_drm.h

index 655803e..f3c5ecf 100644 (file)
@@ -1304,6 +1304,12 @@ static int radeon_do_init_cp(drm_device_t * dev, drm_radeon_init_t * init)
        drm_radeon_private_t *dev_priv = dev->dev_private;
        DRM_DEBUG("\n");
 
+       if (init->is_pci && (dev_priv->flags & CHIP_IS_AGP))
+       {
+               DRM_DEBUG("Forcing AGP card to PCI mode\n");
+               dev_priv->flags &= ~CHIP_IS_AGP;
+       }
+
        if ((!(dev_priv->flags & CHIP_IS_AGP)) && !dev->sg) {
                DRM_ERROR("PCI GART memory not allocated!\n");
                radeon_do_cleanup_cp(dev);
index 6065674..e9a1f9b 100644 (file)
@@ -501,7 +501,7 @@ typedef struct drm_radeon_init {
                RADEON_INIT_R300_CP = 0x04
        } func;
        unsigned long sarea_priv_offset;
-       int is_pci DEPRECATED;                  /* deprecated, driver asks hardware */
+       int is_pci; /* for overriding only */
        int cp_mode;
        int gart_size;
        int ring_size;