drm/hyperv: Use offset-adjusted shadow-plane mappings
For framebuffers with non-zero offset fields, shadow-plane helpers provide a pointer to the first byte of the contained data. Use it in hyperv. Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> Acked-by: Sam Ravnborg <sam@ravnborg.org> Link: https://patchwork.freedesktop.org/patch/msgid/20210803125928.27780-5-tzimmermann@suse.de
This commit is contained in:
@@ -105,7 +105,7 @@ static void hyperv_pipe_enable(struct drm_simple_display_pipe *pipe,
|
|||||||
crtc_state->mode.hdisplay,
|
crtc_state->mode.hdisplay,
|
||||||
crtc_state->mode.vdisplay,
|
crtc_state->mode.vdisplay,
|
||||||
plane_state->fb->pitches[0]);
|
plane_state->fb->pitches[0]);
|
||||||
hyperv_blit_to_vram_fullscreen(plane_state->fb, &shadow_plane_state->map[0]);
|
hyperv_blit_to_vram_fullscreen(plane_state->fb, &shadow_plane_state->data[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int hyperv_pipe_check(struct drm_simple_display_pipe *pipe,
|
static int hyperv_pipe_check(struct drm_simple_display_pipe *pipe,
|
||||||
@@ -133,7 +133,7 @@ static void hyperv_pipe_update(struct drm_simple_display_pipe *pipe,
|
|||||||
struct drm_rect rect;
|
struct drm_rect rect;
|
||||||
|
|
||||||
if (drm_atomic_helper_damage_merged(old_state, state, &rect)) {
|
if (drm_atomic_helper_damage_merged(old_state, state, &rect)) {
|
||||||
hyperv_blit_to_vram_rect(state->fb, &shadow_plane_state->map[0], &rect);
|
hyperv_blit_to_vram_rect(state->fb, &shadow_plane_state->data[0], &rect);
|
||||||
hyperv_update_dirt(hv->hdev, &rect);
|
hyperv_update_dirt(hv->hdev, &rect);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user