Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ohad/hwspinlock
[pandora-kernel.git] / drivers / gpu / drm / vmwgfx / vmwgfx_drv.c
index ddb5abd..13afddc 100644 (file)
@@ -94,6 +94,9 @@
 #define DRM_IOCTL_VMW_FENCE_UNREF                              \
        DRM_IOW(DRM_COMMAND_BASE + DRM_VMW_FENCE_UNREF,         \
                 struct drm_vmw_fence_arg)
+#define DRM_IOCTL_VMW_FENCE_EVENT                              \
+       DRM_IOW(DRM_COMMAND_BASE + DRM_VMW_FENCE_EVENT,         \
+                struct drm_vmw_fence_event_arg)
 #define DRM_IOCTL_VMW_PRESENT                                  \
        DRM_IOW(DRM_COMMAND_BASE + DRM_VMW_PRESENT,             \
                 struct drm_vmw_present_arg)
@@ -150,6 +153,9 @@ static struct drm_ioctl_desc vmw_ioctls[] = {
                      DRM_AUTH | DRM_UNLOCKED),
        VMW_IOCTL_DEF(VMW_FENCE_UNREF, vmw_fence_obj_unref_ioctl,
                      DRM_AUTH | DRM_UNLOCKED),
+       VMW_IOCTL_DEF(VMW_FENCE_EVENT,
+                     vmw_fence_event_ioctl,
+                     DRM_AUTH | DRM_UNLOCKED),
        VMW_IOCTL_DEF(VMW_GET_3D_CAP, vmw_get_cap_3d_ioctl,
                      DRM_AUTH | DRM_UNLOCKED),
 
@@ -238,7 +244,7 @@ static void vmw_dummy_query_bo_prepare(struct vmw_private *dev_priv)
 
        ttm_bo_reserve(bo, false, false, false, 0);
        spin_lock(&bdev->fence_lock);
-       ret = ttm_bo_wait(bo, false, false, false, TTM_USAGE_READWRITE);
+       ret = ttm_bo_wait(bo, false, false, false);
        spin_unlock(&bdev->fence_lock);
        if (unlikely(ret != 0))
                (void) vmw_fallback_wait(dev_priv, false, true, 0, false,
@@ -1063,6 +1069,8 @@ static struct drm_driver driver = {
        .irq_uninstall = vmw_irq_uninstall,
        .irq_handler = vmw_irq_handler,
        .get_vblank_counter = vmw_get_vblank_counter,
+       .enable_vblank = vmw_enable_vblank,
+       .disable_vblank = vmw_disable_vblank,
        .reclaim_buffers_locked = NULL,
        .ioctls = vmw_ioctls,
        .num_ioctls = DRM_ARRAY_SIZE(vmw_ioctls),
@@ -1079,7 +1087,8 @@ static struct drm_driver driver = {
                 .release = drm_release,
                 .unlocked_ioctl = vmw_unlocked_ioctl,
                 .mmap = vmw_mmap,
-                .poll = drm_poll,
+                .poll = vmw_fops_poll,
+                .read = vmw_fops_read,
                 .fasync = drm_fasync,
 #if defined(CONFIG_COMPAT)
                 .compat_ioctl = drm_compat_ioctl,