[RFC 8/9] HACK: drm/msm/mdp5: Add support for legacy cursor updates

Maarten Lankhorst maarten.lankhorst at linux.intel.com
Mon Dec 19 12:50:54 UTC 2016


Op 19-12-16 om 13:08 schreef Archit Taneja:
> This code has been more or less picked up from the vc4 and intel
> implementations of update_plane() funcs for cursor planes.
>
> The update_plane() func is usually the drm_atomic_helper_update_plane
> func that will issue an atomic commit with the plane updates. Such
> commits are not intended to be done faster than the vsync rate.
>
> The legacy cursor userspace API, on the other hand, expects the kernel
> to handle cursor updates immediately.
>
> Create a fast path in update_plane, which updates the cursor registers
> and flushes the configuration. The fast path is taken when there is only
> a change in the cursor's position in the crtc, or a change in the
> cursor's crop co-ordinates. For anything else, we go via the slow path.
>
> We take the slow path even whenever the fb changes, and even when there
> is currently no fb tied to the plane. This should hopefully ensure that
> we always take a slow path for every new fb. The slow path will ensure
> that the fb is prepared/pinned etc.
>
> Cc: 
> Signed-off-by: Archit Taneja <architt at codeaurora.org>
> ---
> - Don't know what to do for locking here :/
Shouldn't patch 9 be done first before 8?

~Maarten


More information about the dri-devel mailing list