Commit 6b4dfdcd authored by Andy Yan's avatar Andy Yan Committed by Heiko Stuebner
Browse files

drm/rockchip: vop2: Fix the mixer alpha setup for layer 0



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: 604be855 ("drm/rockchip: Add VOP2 driver")
Tested-by: default avatarDerek Foreman <derek.foreman@collabora.com>
Signed-off-by: default avatarAndy Yan <andy.yan@rock-chips.com>
Signed-off-by: default avatarHeiko Stuebner <heiko@sntech.de>
Link: https://patchwork.freedesktop.org/patch/msgid/20241209122943.2781431-7-andyshrk@163.com
parent 17b4b10a
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -2425,6 +2425,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