Re: [Intel-gfx] [PATCH 5/6] DRAFT: drm/i915: do display power state notification on crtc enable/disable

2013-08-29 Thread Paulo Zanoni
2013/8/23 Jani Nikula :
> The spec says to notify prior to power down and after power up. It is
> unclear whether it makes a difference.
>
> Signed-off-by: Jani Nikula 
> ---
>  drivers/gpu/drm/i915/intel_display.c |8 ++--
>  1 file changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_display.c 
> b/drivers/gpu/drm/i915/intel_display.c
> index bcb62fe..a6df68e 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -3404,8 +3404,10 @@ static void haswell_crtc_enable(struct drm_crtc *crtc)
> intel_update_fbc(dev);
> mutex_unlock(&dev->struct_mutex);
>
> -   for_each_encoder_on_crtc(dev, crtc, encoder)
> +   for_each_encoder_on_crtc(dev, crtc, encoder) {
> encoder->enable(encoder);
> +   intel_opregion_notify_encoder(encoder, true);

No error checking. But if you followed my bikesheds on the previous
patches, I believe all the error cases have already been singaled by
error messages, so this could be fine.

Reviewed-by: Paulo Zanoni  (and you can
remove the DRAFT word form the patch title)


> +   }
>
> /*
>  * There seems to be a race in PCH platform hw (at least on some
> @@ -3519,8 +3521,10 @@ static void haswell_crtc_disable(struct drm_crtc *crtc)
> if (!intel_crtc->active)
> return;
>
> -   for_each_encoder_on_crtc(dev, crtc, encoder)
> +   for_each_encoder_on_crtc(dev, crtc, encoder) {
> +   intel_opregion_notify_encoder(encoder, false);
> encoder->disable(encoder);
> +   }
>
> intel_crtc_wait_for_pending_flips(crtc);
> drm_vblank_off(dev, pipe);
> --
> 1.7.9.5
>



-- 
Paulo Zanoni
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH 5/6] DRAFT: drm/i915: do display power state notification on crtc enable/disable

2013-08-23 Thread Jani Nikula
The spec says to notify prior to power down and after power up. It is
unclear whether it makes a difference.

Signed-off-by: Jani Nikula 
---
 drivers/gpu/drm/i915/intel_display.c |8 ++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_display.c 
b/drivers/gpu/drm/i915/intel_display.c
index bcb62fe..a6df68e 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -3404,8 +3404,10 @@ static void haswell_crtc_enable(struct drm_crtc *crtc)
intel_update_fbc(dev);
mutex_unlock(&dev->struct_mutex);
 
-   for_each_encoder_on_crtc(dev, crtc, encoder)
+   for_each_encoder_on_crtc(dev, crtc, encoder) {
encoder->enable(encoder);
+   intel_opregion_notify_encoder(encoder, true);
+   }
 
/*
 * There seems to be a race in PCH platform hw (at least on some
@@ -3519,8 +3521,10 @@ static void haswell_crtc_disable(struct drm_crtc *crtc)
if (!intel_crtc->active)
return;
 
-   for_each_encoder_on_crtc(dev, crtc, encoder)
+   for_each_encoder_on_crtc(dev, crtc, encoder) {
+   intel_opregion_notify_encoder(encoder, false);
encoder->disable(encoder);
+   }
 
intel_crtc_wait_for_pending_flips(crtc);
drm_vblank_off(dev, pipe);
-- 
1.7.9.5

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx