vmwgfx: Remove the fifo debug ioctl
It was only used for bringup debugging, and probably doesn't work anymore. Remove it. Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com> Reviewed-by: Jakob Bornecrantz <jakob@vmware.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
parent
2de59d0161
commit
781b8bdb2d
5 changed files with 2 additions and 83 deletions
|
@ -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,
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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);
|
||||||
|
|
||||||
|
|
|
@ -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);
|
|
||||||
}
|
|
||||||
|
|
|
@ -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;
|
||||||
|
|
Loading…
Reference in a new issue