qxl.c (460da1005d90beaab09f34a802976c0539d30587) qxl.c (be812c0ab7d5ab741d0d87387a75a0e8bb6461e7)
1/*
2 * Copyright (C) 2010 Red Hat, Inc.
3 *
4 * written by Yaniv Kamay, Izik Eidus, Gerd Hoffmann
5 * maintained by Gerd Hoffmann <kraxel@redhat.com>
6 *
7 * This program is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU General Public License as

--- 262 unchanged lines hidden (view full) ---

271 */
272 spice_qxl_monitors_config_async(&qxl->ssd.qxl,
273 qxl->guest_monitors_config,
274 MEMSLOT_GROUP_GUEST,
275 (uintptr_t)qxl_cookie_new(
276 QXL_COOKIE_TYPE_POST_LOAD_MONITORS_CONFIG,
277 0));
278 } else {
1/*
2 * Copyright (C) 2010 Red Hat, Inc.
3 *
4 * written by Yaniv Kamay, Izik Eidus, Gerd Hoffmann
5 * maintained by Gerd Hoffmann <kraxel@redhat.com>
6 *
7 * This program is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU General Public License as

--- 262 unchanged lines hidden (view full) ---

271 */
272 spice_qxl_monitors_config_async(&qxl->ssd.qxl,
273 qxl->guest_monitors_config,
274 MEMSLOT_GROUP_GUEST,
275 (uintptr_t)qxl_cookie_new(
276 QXL_COOKIE_TYPE_POST_LOAD_MONITORS_CONFIG,
277 0));
278 } else {
279#if SPICE_SERVER_VERSION >= 0x000c06 /* release 0.12.6 */
279/* >= release 0.12.6, < release 0.14.2 */
280#if SPICE_SERVER_VERSION >= 0x000c06 && SPICE_SERVER_VERSION < 0x000e02
280 if (qxl->max_outputs) {
281 spice_qxl_set_max_monitors(&qxl->ssd.qxl, qxl->max_outputs);
282 }
283#endif
284 qxl->guest_monitors_config = qxl->ram->monitors_config;
285 spice_qxl_monitors_config_async(&qxl->ssd.qxl,
286 qxl->ram->monitors_config,
287 MEMSLOT_GROUP_GUEST,

--- 1895 unchanged lines hidden (view full) ---

2183 qxl->vram32_size < qxl->vram_size ? "[region 4]" : "[unmapped]");
2184
2185 qxl->ssd.qxl.base.sif = &qxl_interface.base;
2186 if (qemu_spice_add_display_interface(&qxl->ssd.qxl, qxl->vga.con) != 0) {
2187 error_setg(errp, "qxl interface %d.%d not supported by spice-server",
2188 SPICE_INTERFACE_QXL_MAJOR, SPICE_INTERFACE_QXL_MINOR);
2189 return;
2190 }
281 if (qxl->max_outputs) {
282 spice_qxl_set_max_monitors(&qxl->ssd.qxl, qxl->max_outputs);
283 }
284#endif
285 qxl->guest_monitors_config = qxl->ram->monitors_config;
286 spice_qxl_monitors_config_async(&qxl->ssd.qxl,
287 qxl->ram->monitors_config,
288 MEMSLOT_GROUP_GUEST,

--- 1895 unchanged lines hidden (view full) ---

2184 qxl->vram32_size < qxl->vram_size ? "[region 4]" : "[unmapped]");
2185
2186 qxl->ssd.qxl.base.sif = &qxl_interface.base;
2187 if (qemu_spice_add_display_interface(&qxl->ssd.qxl, qxl->vga.con) != 0) {
2188 error_setg(errp, "qxl interface %d.%d not supported by spice-server",
2189 SPICE_INTERFACE_QXL_MAJOR, SPICE_INTERFACE_QXL_MINOR);
2190 return;
2191 }
2192
2193#if SPICE_SERVER_VERSION >= 0x000e02 /* release 0.14.2 */
2194 char device_address[256] = "";
2195 if (qemu_spice_fill_device_address(qxl->vga.con, device_address, 256)) {
2196 spice_qxl_set_device_info(&qxl->ssd.qxl,
2197 device_address,
2198 0,
2199 qxl->max_outputs);
2200 }
2201#endif
2202
2191 qemu_add_vm_change_state_handler(qxl_vm_change_state_handler, qxl);
2192
2193 qxl->update_irq = qemu_bh_new(qxl_update_irq_bh, qxl);
2194 qxl_reset_state(qxl);
2195
2196 qxl->update_area_bh = qemu_bh_new(qxl_render_update_area_bh, qxl);
2197 qxl->ssd.cursor_bh = qemu_bh_new(qemu_spice_cursor_refresh_bh, &qxl->ssd);
2198}

--- 327 unchanged lines hidden ---
2203 qemu_add_vm_change_state_handler(qxl_vm_change_state_handler, qxl);
2204
2205 qxl->update_irq = qemu_bh_new(qxl_update_irq_bh, qxl);
2206 qxl_reset_state(qxl);
2207
2208 qxl->update_area_bh = qemu_bh_new(qxl_render_update_area_bh, qxl);
2209 qxl->ssd.cursor_bh = qemu_bh_new(qemu_spice_cursor_refresh_bh, &qxl->ssd);
2210}

--- 327 unchanged lines hidden ---