[PATCH v8 04/14] drm/exynos: atomic phase 1: add .mode_set_nofb() callback

Joonyoung Shim jy0922.shim at samsung.com
Thu May 28 23:21:12 PDT 2015


On 05/28/2015 05:24 PM, Joonyoung Shim wrote:
> On 05/28/2015 05:56 AM, Gustavo Padovan wrote:
>> From: Gustavo Padovan <gustavo.padovan at collabora.co.uk>
>>
>> The new atomic infrastructure needs the .mode_set_nofb() callback to
>> update CRTC timings before setting any plane.
>>
>> Signed-off-by: Gustavo Padovan <gustavo.padovan at collabora.co.uk>
>> Reviewed-by: Joonyoung Shim <jy0922.shim at samsung.com>
>> Tested-by: Tobias Jakobi <tjakobi at math.uni-bielefeld.de>
>> ---
>>  drivers/gpu/drm/exynos/exynos_drm_crtc.c | 64 +++++---------------------------
>>  1 file changed, 9 insertions(+), 55 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/exynos/exynos_drm_crtc.c b/drivers/gpu/drm/exynos/exynos_drm_crtc.c
>> index ba44c9b..c524f0c 100644
>> --- a/drivers/gpu/drm/exynos/exynos_drm_crtc.c
>> +++ b/drivers/gpu/drm/exynos/exynos_drm_crtc.c
>> @@ -62,9 +62,6 @@ static void exynos_drm_crtc_commit(struct drm_crtc *crtc)
>>  
>>  	if (exynos_crtc->ops->win_commit)
>>  		exynos_crtc->ops->win_commit(exynos_crtc, exynos_plane->zpos);
>> -
>> -	if (exynos_crtc->ops->commit)
>> -		exynos_crtc->ops->commit(exynos_crtc);
>>  }
>>  
>>  static bool
>> @@ -81,60 +78,16 @@ exynos_drm_crtc_mode_fixup(struct drm_crtc *crtc,
>>  	return true;
>>  }
>>  
>> -static int
>> -exynos_drm_crtc_mode_set(struct drm_crtc *crtc, struct drm_display_mode *mode,
>> -			  struct drm_display_mode *adjusted_mode, int x, int y,
>> -			  struct drm_framebuffer *old_fb)
>> -{
>> -	struct drm_framebuffer *fb = crtc->primary->fb;
>> -	unsigned int crtc_w;
>> -	unsigned int crtc_h;
>> -	int ret;
>> -
>> -	/*
>> -	 * copy the mode data adjusted by mode_fixup() into crtc->mode
>> -	 * so that hardware can be seet to proper mode.
>> -	 */
>> -	memcpy(&crtc->mode, adjusted_mode, sizeof(*adjusted_mode));
> 
> Let's apply using crtc->state->adjusted_mode instead of crtc->mode on
> exynos drm.
> 

I will make a patch for this, could you rebase from 05/18 of your
patchset on the patch if no any problem?


More information about the dri-devel mailing list