diff options
author | Dave Airlie <airlied@redhat.com> | 2013-11-20 13:16:45 +1000 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2013-11-20 13:16:45 +1000 |
commit | 68663d488e0a618e62f882791583ea08b932f31d (patch) | |
tree | 8ce10589789d06968db655d0588c03fe696f6571 | |
parent | ca66fc12eaf0feed775a41f4c8de352615d0de72 (diff) |
add hot x/y support
-rw-r--r-- | drivers/gpu/drm/virtio/virtgpu_display.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/drivers/gpu/drm/virtio/virtgpu_display.c b/drivers/gpu/drm/virtio/virtgpu_display.c index 6d0a114552f8..e4e10d373089 100644 --- a/drivers/gpu/drm/virtio/virtgpu_display.c +++ b/drivers/gpu/drm/virtio/virtgpu_display.c @@ -93,10 +93,10 @@ virtgpu_hide_cursor(struct virtgpu_device *vgdev) } static int virtgpu_crtc_cursor_set(struct drm_crtc *crtc, - struct drm_file *file_priv, - uint32_t handle, - uint32_t width, - uint32_t height) + struct drm_file *file_priv, + uint32_t handle, + uint32_t width, + uint32_t height, int32_t hot_x, int32_t hot_y) { struct virtgpu_device *vgdev = crtc->dev->dev_private; struct drm_gem_object *gobj = NULL; @@ -124,6 +124,8 @@ static int virtgpu_crtc_cursor_set(struct drm_crtc *crtc, { struct virtgpu_hw_cursor_page *cursor_page = vgdev->cursor_page; cursor_page->cursor_id = qobj->hw_res_handle; + cursor_page->cursor_hot_x = hot_x; + cursor_page->cursor_hot_y = hot_y; } virtgpu_cursor_ping(vgdev); out: @@ -154,7 +156,7 @@ static int virtgpu_crtc_page_flip(struct drm_crtc *crtc, static const struct drm_crtc_funcs virtgpu_crtc_funcs = { - .cursor_set = virtgpu_crtc_cursor_set, + .cursor_set2 = virtgpu_crtc_cursor_set, .cursor_move = virtgpu_crtc_cursor_move, .gamma_set = virtgpu_crtc_gamma_set, .set_config = drm_crtc_helper_set_config, |