Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 781b8bdb authored by Thomas Hellstrom's avatar Thomas Hellstrom Committed by Dave Airlie
Browse files

vmwgfx: Remove the fifo debug ioctl



It was only used for bringup debugging, and probably doesn't work
anymore. Remove it.

Signed-off-by: default avatarThomas Hellstrom <thellstrom@vmware.com>
Reviewed-by: default avatarJakob Bornecrantz <jakob@vmware.com>
Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
parent 2de59d01
Loading
Loading
Loading
Loading
+0 −5
Original line number Original line Diff line number Diff line
@@ -82,9 +82,6 @@
#define DRM_IOCTL_VMW_EXECBUF					\
#define DRM_IOCTL_VMW_EXECBUF					\
	DRM_IOW(DRM_COMMAND_BASE + DRM_VMW_EXECBUF,		\
	DRM_IOW(DRM_COMMAND_BASE + DRM_VMW_EXECBUF,		\
		struct drm_vmw_execbuf_arg)
		struct drm_vmw_execbuf_arg)
#define DRM_IOCTL_VMW_FIFO_DEBUG				\
	DRM_IOWR(DRM_COMMAND_BASE + DRM_VMW_FIFO_DEBUG,		\
		 struct drm_vmw_fifo_debug_arg)
#define DRM_IOCTL_VMW_FENCE_WAIT				\
#define DRM_IOCTL_VMW_FENCE_WAIT				\
	DRM_IOWR(DRM_COMMAND_BASE + DRM_VMW_FENCE_WAIT,		\
	DRM_IOWR(DRM_COMMAND_BASE + DRM_VMW_FENCE_WAIT,		\
		 struct drm_vmw_fence_wait_arg)
		 struct drm_vmw_fence_wait_arg)
@@ -135,8 +132,6 @@ static struct drm_ioctl_desc vmw_ioctls[] = {
		      DRM_AUTH | DRM_UNLOCKED),
		      DRM_AUTH | DRM_UNLOCKED),
	VMW_IOCTL_DEF(VMW_EXECBUF, vmw_execbuf_ioctl,
	VMW_IOCTL_DEF(VMW_EXECBUF, vmw_execbuf_ioctl,
		      DRM_AUTH | DRM_UNLOCKED),
		      DRM_AUTH | DRM_UNLOCKED),
	VMW_IOCTL_DEF(VMW_FIFO_DEBUG, vmw_fifo_debug_ioctl,
		      DRM_AUTH | DRM_ROOT_ONLY | DRM_MASTER | DRM_UNLOCKED),
	VMW_IOCTL_DEF(VMW_FENCE_WAIT, vmw_fence_wait_ioctl,
	VMW_IOCTL_DEF(VMW_FENCE_WAIT, vmw_fence_wait_ioctl,
		      DRM_AUTH | DRM_UNLOCKED),
		      DRM_AUTH | DRM_UNLOCKED),
	VMW_IOCTL_DEF(VMW_UPDATE_LAYOUT, vmw_kms_update_layout_ioctl,
	VMW_IOCTL_DEF(VMW_UPDATE_LAYOUT, vmw_kms_update_layout_ioctl,
+0 −6
Original line number Original line Diff line number Diff line
@@ -116,10 +116,6 @@ struct vmw_fifo_state {
	unsigned long reserved_size;
	unsigned long reserved_size;
	__le32 *dynamic_buffer;
	__le32 *dynamic_buffer;
	__le32 *static_buffer;
	__le32 *static_buffer;
	__le32 *last_buffer;
	uint32_t last_data_size;
	uint32_t last_buffer_size;
	bool last_buffer_add;
	unsigned long static_buffer_size;
	unsigned long static_buffer_size;
	bool using_bounce_buffer;
	bool using_bounce_buffer;
	uint32_t capabilities;
	uint32_t capabilities;
@@ -401,8 +397,6 @@ extern int vmw_user_stream_lookup(struct vmw_private *dev_priv,


extern int vmw_getparam_ioctl(struct drm_device *dev, void *data,
extern int vmw_getparam_ioctl(struct drm_device *dev, void *data,
			      struct drm_file *file_priv);
			      struct drm_file *file_priv);
extern int vmw_fifo_debug_ioctl(struct drm_device *dev, void *data,
				struct drm_file *file_priv);


/**
/**
 * Fifo utilities - vmwgfx_fifo.c
 * Fifo utilities - vmwgfx_fifo.c
+0 −21
Original line number Original line Diff line number Diff line
@@ -72,22 +72,12 @@ int vmw_fifo_init(struct vmw_private *dev_priv, struct vmw_fifo_state *fifo)
	uint32_t max;
	uint32_t max;
	uint32_t min;
	uint32_t min;
	uint32_t dummy;
	uint32_t dummy;
	int ret;


	fifo->static_buffer_size = VMWGFX_FIFO_STATIC_SIZE;
	fifo->static_buffer_size = VMWGFX_FIFO_STATIC_SIZE;
	fifo->static_buffer = vmalloc(fifo->static_buffer_size);
	fifo->static_buffer = vmalloc(fifo->static_buffer_size);
	if (unlikely(fifo->static_buffer == NULL))
	if (unlikely(fifo->static_buffer == NULL))
		return -ENOMEM;
		return -ENOMEM;


	fifo->last_buffer_size = VMWGFX_FIFO_STATIC_SIZE;
	fifo->last_data_size = 0;
	fifo->last_buffer_add = false;
	fifo->last_buffer = vmalloc(fifo->last_buffer_size);
	if (unlikely(fifo->last_buffer == NULL)) {
		ret = -ENOMEM;
		goto out_err;
	}

	fifo->dynamic_buffer = NULL;
	fifo->dynamic_buffer = NULL;
	fifo->reserved_size = 0;
	fifo->reserved_size = 0;
	fifo->using_bounce_buffer = false;
	fifo->using_bounce_buffer = false;
@@ -141,10 +131,6 @@ int vmw_fifo_init(struct vmw_private *dev_priv, struct vmw_fifo_state *fifo)
	iowrite32(dev_priv->last_read_sequence, fifo_mem + SVGA_FIFO_FENCE);
	iowrite32(dev_priv->last_read_sequence, fifo_mem + SVGA_FIFO_FENCE);
	vmw_fence_queue_init(&fifo->fence_queue);
	vmw_fence_queue_init(&fifo->fence_queue);
	return vmw_fifo_send_fence(dev_priv, &dummy);
	return vmw_fifo_send_fence(dev_priv, &dummy);
out_err:
	vfree(fifo->static_buffer);
	fifo->static_buffer = NULL;
	return ret;
}
}


void vmw_fifo_ping_host(struct vmw_private *dev_priv, uint32_t reason)
void vmw_fifo_ping_host(struct vmw_private *dev_priv, uint32_t reason)
@@ -182,11 +168,6 @@ void vmw_fifo_release(struct vmw_private *dev_priv, struct vmw_fifo_state *fifo)
	mutex_unlock(&dev_priv->hw_mutex);
	mutex_unlock(&dev_priv->hw_mutex);
	vmw_fence_queue_takedown(&fifo->fence_queue);
	vmw_fence_queue_takedown(&fifo->fence_queue);


	if (likely(fifo->last_buffer != NULL)) {
		vfree(fifo->last_buffer);
		fifo->last_buffer = NULL;
	}

	if (likely(fifo->static_buffer != NULL)) {
	if (likely(fifo->static_buffer != NULL)) {
		vfree(fifo->static_buffer);
		vfree(fifo->static_buffer);
		fifo->static_buffer = NULL;
		fifo->static_buffer = NULL;
@@ -503,9 +484,7 @@ int vmw_fifo_send_fence(struct vmw_private *dev_priv, uint32_t *sequence)
	    ((unsigned long)fm + sizeof(__le32));
	    ((unsigned long)fm + sizeof(__le32));


	iowrite32(*sequence, &cmd_fence->fence);
	iowrite32(*sequence, &cmd_fence->fence);
	fifo_state->last_buffer_add = true;
	vmw_fifo_commit(dev_priv, bytes);
	vmw_fifo_commit(dev_priv, bytes);
	fifo_state->last_buffer_add = false;
	(void) vmw_fence_push(&fifo_state->fence_queue, *sequence);
	(void) vmw_fence_push(&fifo_state->fence_queue, *sequence);
	vmw_update_sequence(dev_priv, fifo_state);
	vmw_update_sequence(dev_priv, fifo_state);


+0 −23
Original line number Original line Diff line number Diff line
@@ -65,26 +65,3 @@ int vmw_getparam_ioctl(struct drm_device *dev, void *data,


	return 0;
	return 0;
}
}

int vmw_fifo_debug_ioctl(struct drm_device *dev, void *data,
			 struct drm_file *file_priv)
{
	struct vmw_private *dev_priv = vmw_priv(dev);
	struct vmw_fifo_state *fifo_state = &dev_priv->fifo;
	struct drm_vmw_fifo_debug_arg *arg =
	    (struct drm_vmw_fifo_debug_arg *)data;
	__le32 __user *buffer = (__le32 __user *)
	    (unsigned long)arg->debug_buffer;

	if (unlikely(fifo_state->last_buffer == NULL))
		return -EINVAL;

	if (arg->debug_buffer_size < fifo_state->last_data_size) {
		arg->used_size = arg->debug_buffer_size;
		arg->did_not_fit = 1;
	} else {
		arg->used_size = fifo_state->last_data_size;
		arg->did_not_fit = 0;
	}
	return copy_to_user(buffer, fifo_state->last_buffer, arg->used_size);
}
+2 −28
Original line number Original line Diff line number Diff line
@@ -48,10 +48,9 @@
#define DRM_VMW_UNREF_SURFACE        10
#define DRM_VMW_UNREF_SURFACE        10
#define DRM_VMW_REF_SURFACE          11
#define DRM_VMW_REF_SURFACE          11
#define DRM_VMW_EXECBUF              12
#define DRM_VMW_EXECBUF              12
#define DRM_VMW_FIFO_DEBUG           13
#define DRM_VMW_FENCE_WAIT           13
#define DRM_VMW_FENCE_WAIT           14
/* guarded by minor version >= 2 */
/* guarded by minor version >= 2 */
#define DRM_VMW_UPDATE_LAYOUT        15
#define DRM_VMW_UPDATE_LAYOUT        14




/*************************************************************************/
/*************************************************************************/
@@ -433,31 +432,6 @@ struct drm_vmw_unref_dmabuf_arg {
	uint32_t pad64;
	uint32_t pad64;
};
};


/*************************************************************************/
/**
 * DRM_VMW_FIFO_DEBUG - Get last FIFO submission.
 *
 * This IOCTL copies the last FIFO submission directly out of the FIFO buffer.
 */

/**
 * struct drm_vmw_fifo_debug_arg
 *
 * @debug_buffer: User space address of a debug_buffer cast to an uint64_t //In
 * @debug_buffer_size: Size in bytes of debug buffer //In
 * @used_size: Number of bytes copied to the buffer // Out
 * @did_not_fit: Boolean indicating that the fifo contents did not fit. //Out
 *
 * Argument to the DRM_VMW_FIFO_DEBUG Ioctl.
 */

struct drm_vmw_fifo_debug_arg {
	uint64_t debug_buffer;
	uint32_t debug_buffer_size;
	uint32_t used_size;
	int32_t did_not_fit;
	uint32_t pad64;
};


struct drm_vmw_fence_wait_arg {
struct drm_vmw_fence_wait_arg {
	uint64_t sequence;
	uint64_t sequence;