On Wed, 15 Jun 2011 16:08:51 -0400 (EDT) Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote: > The problem of dev_priv->display.init_clock_gating not getting set is > still present in 3.0-rc3. On my system this happens because > intel_init_display() never gets called in the first place. > > AFAICT, the normal calling sequence during driver initialization is: > > i915_driver_load() -> i915_load_modeset_init() -> > intel_modeset_init() -> intel_init_display(). > > But in my case the call to i915_load_modeset_init() doesn't occur > because drm_core_check_feature(dev, DRIVER_MODESET) is False. Ouch, a non-KMS config. Any reason you can't use KMS? This patch should help at any rate. -- Jesse Barnes, Intel Open Source Technology Center diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c index 0defd42..a1a28fb 100644 --- a/drivers/gpu/drm/i915/i915_drv.c +++ b/drivers/gpu/drm/i915/i915_drv.c @@ -429,6 +429,9 @@ static int i915_drm_thaw(struct drm_device *dev) /* KMS EnterVT equivalent */ if (drm_core_check_feature(dev, DRIVER_MODESET)) { mutex_lock(&dev->struct_mutex); + + intel_init_clock_gating(dev); + dev_priv->mm.suspended = 0; error = i915_gem_init_ringbuffer(dev); diff --git a/drivers/gpu/drm/i915/i915_suspend.c b/drivers/gpu/drm/i915/i915_suspend.c index 60a94d2..b478d16 100644 --- a/drivers/gpu/drm/i915/i915_suspend.c +++ b/drivers/gpu/drm/i915/i915_suspend.c @@ -863,8 +863,6 @@ int i915_restore_state(struct drm_device *dev) I915_WRITE(IMR, dev_priv->saveIMR); } - intel_init_clock_gating(dev); - if (IS_IRONLAKE_M(dev)) { ironlake_enable_drps(dev); intel_init_emon(dev); _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel