Re: [PATCH 1/7] drm/i915: Don't disable primary when color keying is used

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Dec 12, 2013 at 9:56 PM, Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx> wrote:
> On Thu, 17 Oct 2013 22:53:13 +0300
> ville.syrjala@xxxxxxxxxxxxxxx wrote:
>
>> From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
>>
>> When color keying is used, the primary may not be invisible even though
>> the sprite fully covers it. So check for color keying before deciding to
>> disable the primary plane.
>>
>> Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
>> ---
>>  drivers/gpu/drm/i915/intel_sprite.c | 11 ++++++++++-
>>  1 file changed, 10 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/gpu/drm/i915/intel_sprite.c b/drivers/gpu/drm/i915/intel_sprite.c
>> index 07b13dc..74f6bd4 100644
>> --- a/drivers/gpu/drm/i915/intel_sprite.c
>> +++ b/drivers/gpu/drm/i915/intel_sprite.c
>> @@ -643,6 +643,15 @@ format_is_yuv(uint32_t format)
>>       }
>>  }
>>
>> +static bool colorkey_enabled(struct intel_plane *intel_plane)
>> +{
>> +     struct drm_intel_sprite_colorkey key;
>> +
>> +     intel_plane->get_colorkey(&intel_plane->base, &key);
>> +
>> +     return key.flags != I915_SET_COLORKEY_NONE;
>> +}
>> +
>>  static int
>>  intel_update_plane(struct drm_plane *plane, struct drm_crtc *crtc,
>>                  struct drm_framebuffer *fb, int crtc_x, int crtc_y,
>> @@ -828,7 +837,7 @@ intel_update_plane(struct drm_plane *plane, struct drm_crtc *crtc,
>>        * If the sprite is completely covering the primary plane,
>>        * we can disable the primary and save power.
>>        */
>> -     disable_primary = drm_rect_equals(&dst, &clip);
>> +     disable_primary = drm_rect_equals(&dst, &clip) && !colorkey_enabled(intel_plane);
>>       WARN_ON(disable_primary && !visible && intel_crtc->active);
>>
>>       mutex_lock(&dev->struct_mutex);
>
> Reviewed-by: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>

Ready your canisters with gallons full of sore acid and raw hatred,
maintainer party-crasher coming in: Where's the igt?

Should be fairly simple to exercise with those fancy CRCs we have ...
-Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/intel-gfx





[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux