[PATCH] drm/vmwgfx: Remove unused vmw_kms_sou_do_bo_dirty
linux at treblig.org
linux at treblig.org
Sat Jun 14 00:18:07 UTC 2025
From: "Dr. David Alan Gilbert" <linux at treblig.org>
The last use of vmw_kms_sou_do_bo_dirty() was removed in 2018 by
commit 2f5544ff0300 ("drm/vmwgfx: Use atomic helper function for dirty fb
IOCTL")
Remove it, and its helpers.
Signed-off-by: Dr. David Alan Gilbert <linux at treblig.org>
---
drivers/gpu/drm/vmwgfx/vmwgfx_kms.h | 8 --
drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c | 112 ---------------------------
2 files changed, 120 deletions(-)
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.h b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.h
index 511e29cdb987..9d8576a0acb5 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.h
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.h
@@ -457,14 +457,6 @@ int vmw_kms_sou_do_surface_dirty(struct vmw_private *dev_priv,
unsigned num_clips, int inc,
struct vmw_fence_obj **out_fence,
struct drm_crtc *crtc);
-int vmw_kms_sou_do_bo_dirty(struct vmw_private *dev_priv,
- struct vmw_framebuffer *framebuffer,
- struct drm_clip_rect *clips,
- struct drm_vmw_rect *vclips,
- unsigned int num_clips, int increment,
- bool interruptible,
- struct vmw_fence_obj **out_fence,
- struct drm_crtc *crtc);
int vmw_kms_sou_readback(struct vmw_private *dev_priv,
struct drm_file *file_priv,
struct vmw_framebuffer *vfb,
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c b/drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c
index 5f5f5a94301f..f758f00dc6ea 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c
@@ -1145,118 +1145,6 @@ int vmw_kms_sou_do_surface_dirty(struct vmw_private *dev_priv,
return ret;
}
-/**
- * vmw_sou_bo_fifo_commit - Callback to submit a set of readback clips.
- *
- * @dirty: The closure structure.
- *
- * Commits a previously built command buffer of readback clips.
- */
-static void vmw_sou_bo_fifo_commit(struct vmw_kms_dirty *dirty)
-{
- if (!dirty->num_hits) {
- vmw_cmd_commit(dirty->dev_priv, 0);
- return;
- }
-
- vmw_cmd_commit(dirty->dev_priv,
- sizeof(struct vmw_kms_sou_bo_blit) *
- dirty->num_hits);
-}
-
-/**
- * vmw_sou_bo_clip - Callback to encode a readback cliprect.
- *
- * @dirty: The closure structure
- *
- * Encodes a BLIT_GMRFB_TO_SCREEN cliprect.
- */
-static void vmw_sou_bo_clip(struct vmw_kms_dirty *dirty)
-{
- struct vmw_kms_sou_bo_blit *blit = dirty->cmd;
-
- blit += dirty->num_hits;
- blit->header = SVGA_CMD_BLIT_GMRFB_TO_SCREEN;
- blit->body.destScreenId = dirty->unit->unit;
- blit->body.srcOrigin.x = dirty->fb_x;
- blit->body.srcOrigin.y = dirty->fb_y;
- blit->body.destRect.left = dirty->unit_x1;
- blit->body.destRect.top = dirty->unit_y1;
- blit->body.destRect.right = dirty->unit_x2;
- blit->body.destRect.bottom = dirty->unit_y2;
- dirty->num_hits++;
-}
-
-/**
- * vmw_kms_sou_do_bo_dirty - Dirty part of a buffer-object backed framebuffer
- *
- * @dev_priv: Pointer to the device private structure.
- * @framebuffer: Pointer to the buffer-object backed framebuffer.
- * @clips: Array of clip rects.
- * @vclips: Alternate array of clip rects. Either @clips or @vclips must
- * be NULL.
- * @num_clips: Number of clip rects in @clips.
- * @increment: Increment to use when looping over @clips.
- * @interruptible: Whether to perform waits interruptible if possible.
- * @out_fence: If non-NULL, will return a ref-counted pointer to a
- * struct vmw_fence_obj. The returned fence pointer may be NULL in which
- * case the device has already synchronized.
- * @crtc: If crtc is passed, perform bo dirty on that crtc only.
- *
- * Returns 0 on success, negative error code on failure. -ERESTARTSYS if
- * interrupted.
- */
-int vmw_kms_sou_do_bo_dirty(struct vmw_private *dev_priv,
- struct vmw_framebuffer *framebuffer,
- struct drm_clip_rect *clips,
- struct drm_vmw_rect *vclips,
- unsigned num_clips, int increment,
- bool interruptible,
- struct vmw_fence_obj **out_fence,
- struct drm_crtc *crtc)
-{
- struct vmw_bo *buf =
- container_of(framebuffer, struct vmw_framebuffer_bo,
- base)->buffer;
- struct vmw_kms_dirty dirty;
- DECLARE_VAL_CONTEXT(val_ctx, NULL, 0);
- int ret;
-
- vmw_bo_placement_set(buf, VMW_BO_DOMAIN_GMR | VMW_BO_DOMAIN_VRAM,
- VMW_BO_DOMAIN_GMR | VMW_BO_DOMAIN_VRAM);
- ret = vmw_validation_add_bo(&val_ctx, buf);
- if (ret)
- return ret;
-
- ret = vmw_validation_prepare(&val_ctx, NULL, interruptible);
- if (ret)
- goto out_unref;
-
- ret = do_bo_define_gmrfb(dev_priv, framebuffer);
- if (unlikely(ret != 0))
- goto out_revert;
-
- dirty.crtc = crtc;
- dirty.fifo_commit = vmw_sou_bo_fifo_commit;
- dirty.clip = vmw_sou_bo_clip;
- dirty.fifo_reserve_size = sizeof(struct vmw_kms_sou_bo_blit) *
- num_clips;
- ret = vmw_kms_helper_dirty(dev_priv, framebuffer, clips, vclips,
- 0, 0, num_clips, increment, &dirty);
- vmw_kms_helper_validation_finish(dev_priv, NULL, &val_ctx, out_fence,
- NULL);
-
- return ret;
-
-out_revert:
- vmw_validation_revert(&val_ctx);
-out_unref:
- vmw_validation_unref_lists(&val_ctx);
-
- return ret;
-}
-
-
/**
* vmw_sou_readback_fifo_commit - Callback to submit a set of readback clips.
*
--
2.49.0
More information about the dri-devel
mailing list