Commit acf8c3e0 authored by Mark Yao's avatar Mark Yao

drm/rockchip: vop: Fix window dest start point

Dest start point use crtc_x/y is wrong, crtc_x/y is not equal
to dest.x1/y1 at plane scale.
Signed-off-by: default avatarMark Yao <mark.yao@rock-chips.com>
parent f1c79abe
...@@ -657,11 +657,9 @@ static int vop_update_plane_event(struct drm_plane *plane, ...@@ -657,11 +657,9 @@ static int vop_update_plane_event(struct drm_plane *plane,
actual_w = (src.x2 - src.x1) >> 16; actual_w = (src.x2 - src.x1) >> 16;
actual_h = (src.y2 - src.y1) >> 16; actual_h = (src.y2 - src.y1) >> 16;
crtc_x = max(0, crtc_x);
crtc_y = max(0, crtc_y);
dsp_stx = crtc_x + crtc->mode.htotal - crtc->mode.hsync_start; dsp_stx = dest.x1 + crtc->mode.htotal - crtc->mode.hsync_start;
dsp_sty = crtc_y + crtc->mode.vtotal - crtc->mode.vsync_start; dsp_sty = dest.y1 + crtc->mode.vtotal - crtc->mode.vsync_start;
offset = (src.x1 >> 16) * (fb->bits_per_pixel >> 3); offset = (src.x1 >> 16) * (fb->bits_per_pixel >> 3);
offset += (src.y1 >> 16) * fb->pitches[0]; offset += (src.y1 >> 16) * fb->pitches[0];
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment