diff options
author | Thomas Hellstrom <thomas-at-tungstengraphics-dot-com> | 2006-08-27 21:16:13 +0200 |
---|---|---|
committer | Thomas Hellstrom <thomas-at-tungstengraphics-dot-com> | 2006-08-27 21:16:13 +0200 |
commit | b4b7b997605f88f3ffdcb0cc7cd1271e0cb24073 (patch) | |
tree | 4b9d29ba4ced4638dc9ff07df4fb2d84105506cc /linux-core/drm_bo.c | |
parent | ac26b51503dfedf422d6ae49518adcf41dff1af3 (diff) |
Remove the ioctl multiplexing, and instead allow for generic
drm ioctls 0x80 - 0xFF.
Diffstat (limited to 'linux-core/drm_bo.c')
-rw-r--r-- | linux-core/drm_bo.c | 43 |
1 files changed, 0 insertions, 43 deletions
diff --git a/linux-core/drm_bo.c b/linux-core/drm_bo.c index 35d4aba7..5eb09839 100644 --- a/linux-core/drm_bo.c +++ b/linux-core/drm_bo.c @@ -301,34 +301,6 @@ int drm_bo_alloc_space(drm_device_t *dev, int tt, drm_buffer_object_t *buf) } #endif -static int drm_do_bo_ioctl(drm_file_t *priv, int num_requests, - drm_bo_arg_data_t __user *data) -{ - drm_bo_arg_data_t arg; - drm_bo_arg_request_t *req = &arg.req; - drm_bo_arg_reply_t rep; - int i, ret; - - for (i=0; i<num_requests; ++i) { - rep.ret = 0; - ret = copy_from_user(&arg, (void __user *) data, sizeof(arg)); - if (ret) { - rep.ret = -EFAULT; - goto out_loop; - } - - arg.rep = rep; - data++; - out_loop: - arg.rep = rep; - ret = copy_to_user((void __user *) data, &arg, sizeof(arg)); - if (!ret) - ++i; - break; - } - return i; -} - int drm_bo_ioctl(DRM_IOCTL_ARGS) { @@ -336,21 +308,6 @@ int drm_bo_ioctl(DRM_IOCTL_ARGS) drm_bo_arg_t arg; unsigned long data_ptr; (void) dev; - - DRM_COPY_FROM_USER_IOCTL(arg, (void __user *)data, sizeof(arg)); - data_ptr = combine_64(arg.data_lo, arg.data_hi); - switch(arg.op) { - case drm_op_bo: - arg.num_requests = drm_do_bo_ioctl(priv, arg.num_requests, - (drm_bo_arg_data_t __user *) - data_ptr); - break; - case drm_op_ttm: - return drm_ttm_ioctl(priv, (drm_ttm_arg_t __user *) - data_ptr); - } - - DRM_COPY_TO_USER_IOCTL((void __user *) data, arg, sizeof(arg)); return 0; } |