diff options
author | Dave Airlie <airlied@gmail.com> | 2013-02-22 15:04:24 +1000 |
---|---|---|
committer | Dave Airlie <airlied@gmail.com> | 2013-02-22 15:04:24 +1000 |
commit | a36ee9c56a8d827f97c746d29908c2fadca69519 (patch) | |
tree | 3b82a5016fa16717d46c984cb314c2bc3444b12c | |
parent | 385eb4f311eaf1b72f456f04c90325e481518fed (diff) |
qxl: more cleanupsqxl-kms-test
-rw-r--r-- | drivers/gpu/drm/qxl/qxl_cmd.c | 12 | ||||
-rw-r--r-- | drivers/gpu/drm/qxl/qxl_display.c | 12 | ||||
-rw-r--r-- | drivers/gpu/drm/qxl/qxl_draw.c | 26 | ||||
-rw-r--r-- | drivers/gpu/drm/qxl/qxl_drv.h | 6 |
4 files changed, 25 insertions, 31 deletions
diff --git a/drivers/gpu/drm/qxl/qxl_cmd.c b/drivers/gpu/drm/qxl/qxl_cmd.c index d12fc8484f22..589a0245ef00 100644 --- a/drivers/gpu/drm/qxl/qxl_cmd.c +++ b/drivers/gpu/drm/qxl/qxl_cmd.c @@ -191,6 +191,18 @@ void qxl_release_ring_flush(struct qxl_device *qdev) qxl_io_flush_release(qdev); } +int +qxl_push_command_ring_release(struct qxl_device *qdev, struct qxl_release *release, + uint32_t type, bool interruptible) +{ + struct qxl_command cmd; + + cmd.type = type; + cmd.data = qxl_bo_physical_address(qdev, release->bos[0], release->release_offset); + + return qxl_ring_push(qdev->command_ring, &cmd, interruptible); +} + bool qxl_queue_garbage_collect(struct qxl_device *qdev, bool flush) { if (!qxl_check_idle(qdev->release_ring)) { diff --git a/drivers/gpu/drm/qxl/qxl_display.c b/drivers/gpu/drm/qxl/qxl_display.c index 16e8b12ac660..08c75eaa01cc 100644 --- a/drivers/gpu/drm/qxl/qxl_display.c +++ b/drivers/gpu/drm/qxl/qxl_display.c @@ -236,6 +236,18 @@ static void qxl_crtc_destroy(struct drm_crtc *crtc) kfree(qxl_crtc); } +static int +qxl_push_cursor_ring(struct qxl_device *qdev, struct qxl_bo *bo, uint32_t type, bool interruptible) +{ + struct qxl_command cmd; + + cmd.type = type; + cmd.data = qxl_bo_physical_address(qdev, bo, 0); + + return qxl_ring_push(qdev->cursor_ring, &cmd, interruptible); +} + + static void push_cursor(struct qxl_device *qdev, struct qxl_bo *cursor_bo) { diff --git a/drivers/gpu/drm/qxl/qxl_draw.c b/drivers/gpu/drm/qxl/qxl_draw.c index ce293a7f9ee4..7b705677a49e 100644 --- a/drivers/gpu/drm/qxl/qxl_draw.c +++ b/drivers/gpu/drm/qxl/qxl_draw.c @@ -88,20 +88,7 @@ make_drawable(struct qxl_device *qdev, int surface, uint8_t type, return drawable; } -/* TODO: bo per command is wasteful. add an offset */ -int -qxl_push_command_ring_release(struct qxl_device *qdev, struct qxl_release *release, - uint32_t type, bool interruptible) -{ - struct qxl_command cmd; - - cmd.type = type; - cmd.data = qxl_bo_physical_address(qdev, release->bos[0], release->release_offset); - - return qxl_ring_push(qdev->command_ring, &cmd, interruptible); -} - -int +static int qxl_push_command_ring(struct qxl_device *qdev, struct qxl_bo *bo, uint32_t type, bool interruptible) { struct qxl_command cmd; @@ -112,17 +99,6 @@ qxl_push_command_ring(struct qxl_device *qdev, struct qxl_bo *bo, uint32_t type, return qxl_ring_push(qdev->command_ring, &cmd, interruptible); } -int -qxl_push_cursor_ring(struct qxl_device *qdev, struct qxl_bo *bo, uint32_t type, bool interruptible) -{ - struct qxl_command cmd; - - cmd.type = type; - cmd.data = qxl_bo_physical_address(qdev, bo, 0); - - return qxl_ring_push(qdev->cursor_ring, &cmd, interruptible); -} - static void push_drawable(struct qxl_device *qdev, struct qxl_bo *drawable_bo) { diff --git a/drivers/gpu/drm/qxl/qxl_drv.h b/drivers/gpu/drm/qxl/qxl_drv.h index 203500ea147b..21916a10f607 100644 --- a/drivers/gpu/drm/qxl/qxl_drv.h +++ b/drivers/gpu/drm/qxl/qxl_drv.h @@ -522,14 +522,8 @@ int qxl_alloc_release_reserved(struct qxl_device *qdev, unsigned long size, int qxl_fence_releaseable(struct qxl_device *qdev, struct qxl_release *release); int -qxl_push_command_ring(struct qxl_device *qdev, struct qxl_bo *bo, - uint32_t type, bool interruptible); -int qxl_push_command_ring_release(struct qxl_device *qdev, struct qxl_release *release, uint32_t type, bool interruptible); -int -qxl_push_cursor_ring(struct qxl_device *qdev, struct qxl_bo *bo, - uint32_t type, bool interruptible); /* qxl drawing commands */ |