radeon: use mm_enabled variable to denote memory manager running
authorDave Airlie <airlied@redhat.com>
Wed, 13 Aug 2008 23:14:14 +0000 (09:14 +1000)
committerDave Airlie <airlied@redhat.com>
Wed, 13 Aug 2008 23:14:14 +0000 (09:14 +1000)
linux-core/radeon_gem.c
shared-core/radeon_drv.h
shared-core/radeon_state.c

index 058131e..ebba3cf 100644 (file)
@@ -645,7 +645,7 @@ int radeon_gem_mm_init(struct drm_device *dev)
        if (ret)
                return -EINVAL;
 
-       
+       dev_priv->mm_enabled = true;
        return 0;
 }
 
@@ -685,6 +685,9 @@ void radeon_gem_mm_fini(struct drm_device *dev)
        }
 
        mutex_unlock(&dev->struct_mutex);
+
+       drm_bo_driver_finish(dev);
+       dev_priv->mm_enabled = false;
 }
 
 int radeon_gem_object_pin(struct drm_gem_object *obj,
index aa5b4ba..df08b8d 100644 (file)
@@ -399,7 +399,7 @@ typedef struct drm_radeon_private {
 
        int num_gb_pipes;
 
-       int mm_disabled; /* on OSes with no MM this will be 1*/
+       bool mm_enabled;
        struct radeon_mm_info mm;
        drm_local_map_t *mmio;
 
index 1a828be..4520a35 100644 (file)
@@ -3125,7 +3125,7 @@ static int radeon_cp_getparam(struct drm_device *dev, void *data, struct drm_fil
                value = 1;
                break;
        case RADEON_PARAM_KERNEL_MM:
-               value = !dev_priv->mm_disabled;
+               value = dev_priv->mm_enabled;
                break;
        default:
                DRM_DEBUG( "Invalid parameter %d\n", param->param );