diff mbox

[PATCHv5,12/12] qxl: use QXL_REVISION_*

Message ID 1310670801-14687-13-git-send-email-alevy@redhat.com
State New
Headers show

Commit Message

Alon Levy July 14, 2011, 7:13 p.m. UTC
Signed-off-by: Alon Levy <alevy@redhat.com>
---
 hw/qxl.c |   27 ++++++++++++++-------------
 1 files changed, 14 insertions(+), 13 deletions(-)

Comments

Gerd Hoffmann July 15, 2011, 8:23 a.m. UTC | #1
Hi,

> +#if SPICE_INTERFACE_QXL_MINOR>= 1
> +    qemu_mutex_init(&qxl->async_lock);
> +    qxl->current_async = QXL_UNDEFINED_IO;
> +#endif

That surely belongs into another patch ...

> +    case QXL_REVISION_STABLE_V04: /* spice 0.4 -- qxl-1 */
> +    case QXL_REVISION_STABLE_V06: /* spice 0.6 -- qxl-2 */

I think we should just not use these defines for now.

In a year or so when the new bits are in widespread use we can raise the 
minimum required spice-server+spice-protocol versions, cleanup the ifdef 
mess and also use QXL_REVISION_STABLE_V04.

cheers,
   Gerd
Alon Levy July 15, 2011, 9:14 a.m. UTC | #2
On Fri, Jul 15, 2011 at 10:23:39AM +0200, Gerd Hoffmann wrote:
>   Hi,
> 
> >+#if SPICE_INTERFACE_QXL_MINOR>= 1
> >+    qemu_mutex_init(&qxl->async_lock);
> >+    qxl->current_async = QXL_UNDEFINED_IO;
> >+#endif
> 
> That surely belongs into another patch ...

yes.

> 
> >+    case QXL_REVISION_STABLE_V04: /* spice 0.4 -- qxl-1 */
> >+    case QXL_REVISION_STABLE_V06: /* spice 0.6 -- qxl-2 */
> 
> I think we should just not use these defines for now.
> 
> In a year or so when the new bits are in widespread use we can raise
> the minimum required spice-server+spice-protocol versions, cleanup
> the ifdef mess and also use QXL_REVISION_STABLE_V04.
> 

ok. I'll drop this patch (at least the bits fitting the patch header).

> cheers,
>   Gerd
>
diff mbox

Patch

diff --git a/hw/qxl.c b/hw/qxl.c
index 5052206..b9d27b9 100644
--- a/hw/qxl.c
+++ b/hw/qxl.c
@@ -1579,7 +1579,6 @@  static DisplayChangeListener display_listener = {
 static int qxl_init_common(PCIQXLDevice *qxl)
 {
     uint8_t* config = qxl->pci.config;
-    uint32_t pci_device_rev;
     uint32_t io_size;
 
     qxl->mode = QXL_MODE_UNDEFINED;
@@ -1587,23 +1586,25 @@  static int qxl_init_common(PCIQXLDevice *qxl)
     qxl->num_memslots = NUM_MEMSLOTS;
     qxl->num_surfaces = NUM_SURFACES;
     qemu_mutex_init(&qxl->track_lock);
-
+#if SPICE_INTERFACE_QXL_MINOR >= 1
+    qemu_mutex_init(&qxl->async_lock);
+    qxl->current_async = QXL_UNDEFINED_IO;
+#endif
     switch (qxl->revision) {
-    case 1: /* spice 0.4 -- qxl-1 */
-        pci_device_rev = QXL_REVISION_STABLE_V04;
-        break;
-    case 2: /* spice 0.6 -- qxl-2 */
-        pci_device_rev = QXL_REVISION_STABLE_V06;
-        break;
+    case QXL_REVISION_STABLE_V04: /* spice 0.4 -- qxl-1 */
+    case QXL_REVISION_STABLE_V06: /* spice 0.6 -- qxl-2 */
 #if SPICE_INTERFACE_QXL_MINOR >= 1
-    case 3: /* qxl-3 */
+    case QXL_REVISION_STABLE_V10: /* spice 0.10? -- qxl-3 */
+        break;
 #endif
     default:
-        pci_device_rev = QXL_DEFAULT_REVISION;
+        fprintf(stderr, "invalid revision %d, resetting to %d\n", qxl->revision,
+            QXL_DEFAULT_REVISION);
+        qxl->revision = QXL_DEFAULT_REVISION;
         break;
     }
 
-    pci_set_byte(&config[PCI_REVISION_ID], pci_device_rev);
+    pci_set_byte(&config[PCI_REVISION_ID], qxl->revision);
     pci_set_byte(&config[PCI_INTERRUPT_PIN], 1);
 
     qxl->rom_size = qxl_rom_size();
@@ -1614,14 +1615,14 @@  static int qxl_init_common(PCIQXLDevice *qxl)
     if (qxl->vram_size < 16 * 1024 * 1024) {
         qxl->vram_size = 16 * 1024 * 1024;
     }
-    if (qxl->revision == 1) {
+    if (qxl->revision == QXL_REVISION_STABLE_V04) {
         qxl->vram_size = 4096;
     }
     qxl->vram_size = msb_mask(qxl->vram_size * 2 - 1);
     qxl->vram_offset = qemu_ram_alloc(&qxl->pci.qdev, "qxl.vram", qxl->vram_size);
 
     io_size = msb_mask(QXL_IO_RANGE_SIZE * 2 - 1);
-    if (qxl->revision == 1) {
+    if (qxl->revision == QXL_REVISION_STABLE_V04) {
         io_size = 8;
     }