aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm')
-rw-r--r--drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf.c b/drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf.c
index 32ec52eaedd8..afc6d1df47d7 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf.c
@@ -293,8 +293,12 @@ static int vmw_cmdbuf_header_submit(struct vmw_cmdbuf_header *header)
293 struct vmw_cmdbuf_man *man = header->man; 293 struct vmw_cmdbuf_man *man = header->man;
294 u32 val; 294 u32 val;
295 295
296 val = (header->handle >> 32); 296 if (sizeof(header->handle) > 4)
297 val = (header->handle >> 32);
298 else
299 val = 0;
297 vmw_write(man->dev_priv, SVGA_REG_COMMAND_HIGH, val); 300 vmw_write(man->dev_priv, SVGA_REG_COMMAND_HIGH, val);
301
298 val = (header->handle & 0xFFFFFFFFULL); 302 val = (header->handle & 0xFFFFFFFFULL);
299 val |= header->cb_context & SVGA_CB_CONTEXT_MASK; 303 val |= header->cb_context & SVGA_CB_CONTEXT_MASK;
300 vmw_write(man->dev_priv, SVGA_REG_COMMAND_LOW, val); 304 vmw_write(man->dev_priv, SVGA_REG_COMMAND_LOW, val);