drm/mali-dp: Implement plane alpha and pixel blend on malidp
authorLowry Li <lowry.li@arm.com>
Fri, 31 Aug 2018 11:35:30 +0000 (19:35 +0800)
committerLiviu Dudau <Liviu.Dudau@arm.com>
Tue, 2 Oct 2018 10:54:26 +0000 (11:54 +0100)
commit187f7f21b2a268f6eb157bd8bb703de6b0064f17
treebda6a4b2a428c0217925dff9867b0dfa38665f76
parent791d54fa054d304636fa783f6f082a9dd934ec6a
drm/mali-dp: Implement plane alpha and pixel blend on malidp

Checks the pixel blending mode and plane alpha value when
do the plane_check. Mali DP supports blending the current plane
with the background either based on the pixel alpha blending
mode or by using the layer's alpha value, but not both at the
same time. If both case, plane_check will return failed.

Sets the HW when doing plane_update accordingly. If plane alpha
is the 0xffff, set the pixel blending bits accordingly. If not
we'd set ALPHA bit as zero and layer alpha value.

Changes since v1:
 - Introduces to use it in the malidp driver, which depends on
   the plane alpha patch
Changes since v2:
 - Refines the comments of drm/mali-dp patchset
Changes since v3:
 - Adds hardware limitation check
Changes since v4:
 - Updates on drm/malidp, hardware limitation check only when
   the format has alpha pixel.
 - Rebases on drm-misc-next.

Signed-off-by: Lowry Li <lowry.li@arm.com>
Acked-by: Liviu Dudau <liviu.dudau@arm.com>
Signed-off-by: Liviu Dudau <liviu.dudau@arm.com>
drivers/gpu/drm/arm/malidp_planes.c