[PATCHv2 09/10] drm: omapdrm: crtc: get manual mode displays working

Tony Lindgren tony at atomide.com
Sun Mar 5 05:39:51 UTC 2017


* Sebastian Reichel <sre at kernel.org> [170304 16:45]:
> From: Tony Lindgren <tony at atomide.com>
> 
> With manual mode displays we need to flush the panel manually.
> 
> Let's add flushing so we get Tomi's fbtest, kmstest, kmstest --flip,
> and X and wayland working.
> --- a/drivers/gpu/drm/omapdrm/omap_crtc.c
> +++ b/drivers/gpu/drm/omapdrm/omap_crtc.c
> @@ -97,6 +97,11 @@ bool omap_crtc_is_manual_updated(struct drm_crtc *crtc)
>  	return omap_crtc->manually_updated;
>  }
>  
> +static void omap_crtc_manual_needs_flush(struct drm_crtc *crtc)
> +{
> +	omap_crtc_flush(crtc, 0, 0, 0, 0);
> +}
...

> @@ -554,6 +561,7 @@ static void omap_crtc_atomic_flush(struct drm_crtc *crtc,
>  		ret = drm_crtc_vblank_get(crtc);
>  		WARN_ON(ret != 0);
>  	}
> +	omap_crtc_flush(&omap_crtc->base, 0, 0, 0, 0);

Just noticed that this should also just use omap_crtc_manual_needs_flush()
here if you care to update it.

Regards,

Tony


More information about the dri-devel mailing list