[Intel-gfx] [PATCH 7/8] drm/i915: Move toggling planes out of crtc enable/disable.

Maarten Lankhorst maarten.lankhorst at linux.intel.com
Thu Apr 16 01:05:57 PDT 2015


Op 16-04-15 om 09:32 schreef Ander Conselvan De Oliveira:
> On Wed, 2015-04-15 at 16:34 +0200, Maarten Lankhorst wrote:
>> This makes disabling planes more explicit.
>>
>> Signed-off-by: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
>> ---
>>  drivers/gpu/drm/i915/i915_debugfs.c  |  4 ++++
>>  drivers/gpu/drm/i915/intel_display.c | 36 ++++++++++++++++++------------------
>>  drivers/gpu/drm/i915/intel_drv.h     |  2 ++
>>  3 files changed, 24 insertions(+), 18 deletions(-)
> [...]
>
>> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
>> index 47fbdb5c71cb..cb677aff4245 100644
>> --- a/drivers/gpu/drm/i915/intel_display.c
>> +++ b/drivers/gpu/drm/i915/intel_display.c
>> @@ -4711,10 +4711,13 @@ intel_pre_disable_primary(struct drm_crtc *crtc)
>>  	hsw_disable_ips(intel_crtc);
>>  }
>>  
>> -static void intel_crtc_enable_planes(struct drm_crtc *crtc)
>> +void intel_crtc_enable_planes(struct drm_crtc *crtc)
>>  {
>>  	struct intel_crtc *intel_crtc = to_intel_crtc(crtc);
>>  
>> +	if (intel_crtc->active)
>> +		return;
>> +
>>  	intel_enable_primary_hw_plane(crtc->primary, crtc);
>>  	intel_enable_sprite_planes(crtc);
>>  	intel_crtc_update_cursor(crtc, true);
> [...]
>
>> @@ -12040,6 +12038,7 @@ static int __intel_set_mode(struct drm_crtc *crtc,
>>  		update_scanline_offset(intel_crtc);
>>  
>>  		dev_priv->display.crtc_enable(&intel_crtc->base);
>> +		intel_crtc_enable_planes(&intel_crtc->base);
>>  	}
> The crtc_enable hooks set intel_crtc->active, so the call to
> intel_crtc_enable_planes() doesn't actually do anything because of the
> new check in the hunk above.
Argh, you're right. I'll respin this patch.

~Maarten


More information about the Intel-gfx mailing list