drm/rockchip: vop2: Fix the mixer alpha setup for layer 0
[ Upstream commit 6b4dfdcde3573a12b72d2869dabd4ca37ad7e9c7 ]
The alpha setup should start from the second layer, the current calculation
starts incorrectly from the first layer, a negative offset will be obtained
in the following formula:
offset = (mixer_id + zpos - 1) * 0x10
Fixes: 604be85547 ("drm/rockchip: Add VOP2 driver")
Tested-by: Derek Foreman <derek.foreman@collabora.com>
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Link: https://patchwork.freedesktop.org/patch/msgid/20241209122943.2781431-7-andyshrk@163.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
869e43d21e
commit
dc03fc5779
@@ -2248,6 +2248,12 @@ static void vop2_setup_alpha(struct vop2_video_port *vp)
|
||||
struct vop2_win *win = to_vop2_win(plane);
|
||||
int zpos = plane->state->normalized_zpos;
|
||||
|
||||
/*
|
||||
* Need to configure alpha from second layer.
|
||||
*/
|
||||
if (zpos == 0)
|
||||
continue;
|
||||
|
||||
if (plane->state->pixel_blend_mode == DRM_MODE_BLEND_PREMULTI)
|
||||
premulti_en = 1;
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user