Commit 0b0f1afe authored by Gurchetan Singh's avatar Gurchetan Singh Committed by Gerd Hoffmann

drm/virtio: implement blob resources: blob display integration

SCANOUT_BLOB forwards the DRM framebuffer metadata to the host. The
modifier is intentionally left out -- it may be possible to query
the host for that.

We also assume one blob resource per DRM framebuffer.  That too is
an intentional simplification.
Signed-off-by: default avatarGurchetan Singh <gurchetansingh@chromium.org>
Acked-by: default avatarTomeu Vizoso <tomeu.vizoso@collabora.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20200924003214.662-14-gurchetansingh@chromium.orgSigned-off-by: default avatarGerd Hoffmann <kraxel@redhat.com>
parent c7a6ac4f
...@@ -174,6 +174,16 @@ static void virtio_gpu_primary_plane_update(struct drm_plane *plane, ...@@ -174,6 +174,16 @@ static void virtio_gpu_primary_plane_update(struct drm_plane *plane,
plane->state->src_h >> 16, plane->state->src_h >> 16,
plane->state->src_x >> 16, plane->state->src_x >> 16,
plane->state->src_y >> 16); plane->state->src_y >> 16);
if (bo->host3d_blob || bo->guest_blob) {
virtio_gpu_cmd_set_scanout_blob
(vgdev, output->index, bo,
plane->state->fb,
plane->state->src_w >> 16,
plane->state->src_h >> 16,
plane->state->src_x >> 16,
plane->state->src_y >> 16);
} else {
virtio_gpu_cmd_set_scanout(vgdev, output->index, virtio_gpu_cmd_set_scanout(vgdev, output->index,
bo->hw_res_handle, bo->hw_res_handle,
plane->state->src_w >> 16, plane->state->src_w >> 16,
...@@ -181,6 +191,7 @@ static void virtio_gpu_primary_plane_update(struct drm_plane *plane, ...@@ -181,6 +191,7 @@ static void virtio_gpu_primary_plane_update(struct drm_plane *plane,
plane->state->src_x >> 16, plane->state->src_x >> 16,
plane->state->src_y >> 16); plane->state->src_y >> 16);
} }
}
virtio_gpu_cmd_resource_flush(vgdev, bo->hw_res_handle, virtio_gpu_cmd_resource_flush(vgdev, bo->hw_res_handle,
rect.x1, rect.x1,
......
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