diff options
Diffstat (limited to 'drivers/gpu/drm/virtio/virtgpu_plane.c')
| -rw-r--r-- | drivers/gpu/drm/virtio/virtgpu_plane.c | 19 | 
1 files changed, 13 insertions, 6 deletions
| diff --git a/drivers/gpu/drm/virtio/virtgpu_plane.c b/drivers/gpu/drm/virtio/virtgpu_plane.c index 42ac08ed1442..4e1b17548007 100644 --- a/drivers/gpu/drm/virtio/virtgpu_plane.c +++ b/drivers/gpu/drm/virtio/virtgpu_plane.c @@ -83,20 +83,23 @@ static const struct drm_plane_funcs virtio_gpu_plane_funcs = {  };  static int virtio_gpu_plane_atomic_check(struct drm_plane *plane, -					 struct drm_plane_state *state) +					 struct drm_atomic_state *state)  { +	struct drm_plane_state *new_plane_state = drm_atomic_get_new_plane_state(state, +										 plane);  	bool is_cursor = plane->type == DRM_PLANE_TYPE_CURSOR;  	struct drm_crtc_state *crtc_state;  	int ret; -	if (!state->fb || WARN_ON(!state->crtc)) +	if (!new_plane_state->fb || WARN_ON(!new_plane_state->crtc))  		return 0; -	crtc_state = drm_atomic_get_crtc_state(state->state, state->crtc); +	crtc_state = drm_atomic_get_crtc_state(state, +					       new_plane_state->crtc);  	if (IS_ERR(crtc_state))                  return PTR_ERR(crtc_state); -	ret = drm_atomic_helper_check_plane_state(state, crtc_state, +	ret = drm_atomic_helper_check_plane_state(new_plane_state, crtc_state,  						  DRM_PLANE_HELPER_NO_SCALING,  						  DRM_PLANE_HELPER_NO_SCALING,  						  is_cursor, true); @@ -127,8 +130,10 @@ static void virtio_gpu_update_dumb_bo(struct virtio_gpu_device *vgdev,  }  static void virtio_gpu_primary_plane_update(struct drm_plane *plane, -					    struct drm_plane_state *old_state) +					    struct drm_atomic_state *state)  { +	struct drm_plane_state *old_state = drm_atomic_get_old_plane_state(state, +									   plane);  	struct drm_device *dev = plane->dev;  	struct virtio_gpu_device *vgdev = dev->dev_private;  	struct virtio_gpu_output *output = NULL; @@ -239,8 +244,10 @@ static void virtio_gpu_cursor_cleanup_fb(struct drm_plane *plane,  }  static void virtio_gpu_cursor_plane_update(struct drm_plane *plane, -					   struct drm_plane_state *old_state) +					   struct drm_atomic_state *state)  { +	struct drm_plane_state *old_state = drm_atomic_get_old_plane_state(state, +									   plane);  	struct drm_device *dev = plane->dev;  	struct virtio_gpu_device *vgdev = dev->dev_private;  	struct virtio_gpu_output *output = NULL; | 
