qxl: register QemuConsole for secondary cards

Hook secondary qxl cards properly into the qemu console subsystem.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
Gerd Hoffmann 2013-03-19 16:59:58 +01:00
parent 9697f5d2d3
commit bfe528b9b9

View File

@ -1769,7 +1769,10 @@ static void qxl_hw_invalidate(void *opaque)
PCIQXLDevice *qxl = opaque; PCIQXLDevice *qxl = opaque;
VGACommonState *vga = &qxl->vga; VGACommonState *vga = &qxl->vga;
vga->hw_ops->invalidate(vga); if (qxl->mode == QXL_MODE_VGA) {
vga->hw_ops->invalidate(vga);
return;
}
} }
static void qxl_hw_text_update(void *opaque, console_ch_t *chardata) static void qxl_hw_text_update(void *opaque, console_ch_t *chardata)
@ -2085,6 +2088,7 @@ static int qxl_init_secondary(PCIDevice *dev)
memory_region_init_ram(&qxl->vga.vram, "qxl.vgavram", qxl->vga.vram_size); memory_region_init_ram(&qxl->vga.vram, "qxl.vgavram", qxl->vga.vram_size);
vmstate_register_ram(&qxl->vga.vram, &qxl->pci.qdev); vmstate_register_ram(&qxl->vga.vram, &qxl->pci.qdev);
qxl->vga.vram_ptr = memory_region_get_ram_ptr(&qxl->vga.vram); qxl->vga.vram_ptr = memory_region_get_ram_ptr(&qxl->vga.vram);
qxl->vga.con = graphic_console_init(&qxl_ops, qxl);
return qxl_init_common(qxl); return qxl_init_common(qxl);
} }