diff options
author | Izik Eidus <ieidus@redhat.com> | 2010-04-14 19:48:08 +0300 |
---|---|---|
committer | Izik Eidus <ieidus@redhat.com> | 2010-04-14 19:48:08 +0300 |
commit | e6993b8a04fc649c89236af9d07cfc2ed89a0ed8 (patch) | |
tree | a534de8e92894e4d4a183fa87f716c7e141c2585 | |
parent | 64ada13d45afdd62e6f3a896e05ec120af0fed3d (diff) |
vdesktop: qxl device: move into the new update_area command
Signed-off-by: Izik Eidus <ieidus@redhat.com>
-rw-r--r-- | qemu/hw/qxl.c | 20 | ||||
-rw-r--r-- | qemu/hw/qxl_interface.h | 5 | ||||
-rw-r--r-- | qemu/hw/qxl_native_worker.c | 4 |
3 files changed, 8 insertions, 21 deletions
diff --git a/qemu/hw/qxl.c b/qemu/hw/qxl.c index 5e06880c..509f6854 100644 --- a/qemu/hw/qxl.c +++ b/qemu/hw/qxl.c @@ -414,12 +414,6 @@ static int _qxl_get_cursor_command(PCIQXLDevice *d, QXLCommandExt *cmd_ext) return 1; } -static void _qxl_get_update_area(PCIQXLDevice *d, const Rect **rect, UINT32 **surface_id) -{ - *rect = &d->state.ram->update_area; - *surface_id = &d->state.ram->update_surface; -} - static int _qxl_req_cmd_notification(PCIQXLDevice *d) { int wait; @@ -1153,7 +1147,8 @@ static void ioport_write(void *opaque, uint32_t addr, uint32_t val) } switch (io_port) { case QXL_IO_UPDATE_AREA: - d->worker->update_area(d->worker); + d->worker->update_area(d->worker, d->state.ram->update_surface, &d->state.ram->update_area, + NULL, 0, 0); break; case QXL_IO_NOTIFY_CMD: d->worker->wakeup(d->worker); @@ -1810,11 +1805,6 @@ int qxl_has_command(QXLDevRef dev_ref) return _qxl_has_command((PCIQXLDevice *)dev_ref); } -void qxl_get_update_area(QXLDevRef dev_ref, const Rect **rect, UINT32 **surface_id) -{ - _qxl_get_update_area((PCIQXLDevice *)dev_ref, rect, surface_id); -} - int qxl_flush_resources(QXLDevRef dev_ref) { return _qxl_flush_resources((PCIQXLDevice *)dev_ref); @@ -1894,11 +1884,6 @@ static int interface_req_cursor_notification(QXLInterface *qxl) return _qxl_req_cursor_notification(((Interface *)qxl)->d); } -static void interface_get_update_area(QXLInterface *qxl, const Rect **rect, UINT32 **surface_id) -{ - _qxl_get_update_area(((Interface *)qxl)->d, rect, surface_id); -} - static void interface_notify_update(QXLInterface *qxl, uint32_t update_id) { _qxl_notify_update(((Interface *)qxl)->d, update_id); @@ -1949,7 +1934,6 @@ static void regitser_interface(PCIQXLDevice *d) interface->vd_interface.release_resource = interface_release_resource; interface->vd_interface.get_cursor_command = interface_get_cursor_command; interface->vd_interface.req_cursor_notification = interface_req_cursor_notification; - interface->vd_interface.get_update_area = interface_get_update_area; interface->vd_interface.notify_update = interface_notify_update; interface->vd_interface.set_save_data = interface_set_save_data; interface->vd_interface.get_save_data = interface_get_save_data; diff --git a/qemu/hw/qxl_interface.h b/qemu/hw/qxl_interface.h index 24f10da0..a2702752 100644 --- a/qemu/hw/qxl_interface.h +++ b/qemu/hw/qxl_interface.h @@ -72,7 +72,9 @@ struct QXLWorker { void (*load)(QXLWorker *worker); void (*start)(QXLWorker *worker); void (*stop)(QXLWorker *worker); - void (*update_area)(QXLWorker *worker); + void (*update_area)(QXLWorker *qxl_worker, uint32_t surface_id, + Rect *area, Rect *dirty_rects, + uint32_t num_dirty_rects, uint32_t clear_dirty_region); void (*add_memslot)(QXLWorker *worker, QXLDevMemSlot *slot); void (*del_memslot)(QXLWorker *worker, uint32_t slot_group_id, uint32_t slot_id); void (*reset_memslots)(QXLWorker *worker); @@ -96,7 +98,6 @@ int qxl_req_cmd_notification(QXLDevRef dev_ref); int qxl_get_cursor_command(QXLDevRef dev_ref, QXLCommandExt *cmd); int qxl_req_cursor_notification(QXLDevRef dev_ref); int qxl_has_command(QXLDevRef dev_ref); -void qxl_get_update_area(QXLDevRef dev_ref, const Rect **rect, uint32_t **surface_id); int qxl_flush_resources(QXLDevRef dev_ref); void qxl_set_save_data(QXLDevRef dev_ref, void *data, int size); void *qxl_get_save_data(QXLDevRef dev_ref); diff --git a/qemu/hw/qxl_native_worker.c b/qemu/hw/qxl_native_worker.c index 35664cf9..70d5da22 100644 --- a/qemu/hw/qxl_native_worker.c +++ b/qemu/hw/qxl_native_worker.c @@ -227,7 +227,9 @@ static void native_qxl_worker_detach(QXLWorker *worker) native_qxl_worker_wakeup(worker); } -static void native_qxl_worker_update_area(QXLWorker *worker) +static void native_qxl_worker_update_area(QXLWorker *worker, uint32_t surface_id, + Rect *area, Rect *dirty_rects, + uint32_t num_dirty_rects, uint32_t clear_dirty_region) { qxl_printf(""); native_qxl_worker_wakeup(worker); |