]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - drivers/gpu/drm/radeon/radeon_kms.c
drm/radeon: tone down overchatty acpi debug messages.
[mv-sheeva.git] / drivers / gpu / drm / radeon / radeon_kms.c
index 8931c8e78101fbaa53343b8aeca47ed9e21b57c3..ddcd3b13f15162cc9db280087b480a8171de8e30 100644 (file)
@@ -81,7 +81,7 @@ int radeon_driver_load_kms(struct drm_device *dev, unsigned long flags)
        /* Call ACPI methods */
        acpi_status = radeon_acpi_init(rdev);
        if (acpi_status)
-               dev_err(&dev->pdev->dev, "Error during ACPI methods call\n");
+               dev_dbg(&dev->pdev->dev, "Error during ACPI methods call\n");
 
        /* Again modeset_init should fail only on fatal error
         * otherwise it should provide enough functionalities
@@ -141,7 +141,7 @@ int radeon_info_ioctl(struct drm_device *dev, void *data, struct drm_file *filp)
                        }
                }
                if (!found) {
-                       DRM_DEBUG("unknown crtc id %d\n", value);
+                       DRM_DEBUG_KMS("unknown crtc id %d\n", value);
                        return -EINVAL;
                }
                break;
@@ -156,12 +156,21 @@ int radeon_info_ioctl(struct drm_device *dev, void *data, struct drm_file *filp)
                else if (rdev->family >= CHIP_R600)
                        value = rdev->config.r600.tile_config;
                else {
-                       DRM_DEBUG("tiling config is r6xx+ only!\n");
+                       DRM_DEBUG_KMS("tiling config is r6xx+ only!\n");
                        return -EINVAL;
                }
+       case RADEON_INFO_WANT_HYPERZ:
+               mutex_lock(&dev->struct_mutex);
+               if (rdev->hyperz_filp)
+                       value = 0;
+               else {
+                       rdev->hyperz_filp = filp;
+                       value = 1;
+               }
+               mutex_unlock(&dev->struct_mutex);
                break;
        default:
-               DRM_DEBUG("Invalid request %d\n", info->request);
+               DRM_DEBUG_KMS("Invalid request %d\n", info->request);
                return -EINVAL;
        }
        if (DRM_COPY_TO_USER(value_ptr, &value, sizeof(uint32_t))) {
@@ -199,9 +208,11 @@ void radeon_driver_postclose_kms(struct drm_device *dev,
 void radeon_driver_preclose_kms(struct drm_device *dev,
                                struct drm_file *file_priv)
 {
+       struct radeon_device *rdev = dev->dev_private;
+       if (rdev->hyperz_filp == file_priv)
+               rdev->hyperz_filp = NULL;
 }
 
-
 /*
  * VBlank related functions.
  */