qxl: stop using non revision 4 rom fields for revision < 4
Signed-off-by: Alon Levy <alevy@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
parent
1356b98d3e
commit
e0ac6097b6
11
hw/qxl.c
11
hw/qxl.c
@ -945,6 +945,12 @@ static void interface_set_client_capabilities(QXLInstance *sin,
|
||||
{
|
||||
PCIQXLDevice *qxl = container_of(sin, PCIQXLDevice, ssd.qxl);
|
||||
|
||||
if (qxl->revision < 4) {
|
||||
trace_qxl_set_client_capabilities_unsupported_by_revision(qxl->id,
|
||||
qxl->revision);
|
||||
return;
|
||||
}
|
||||
|
||||
if (runstate_check(RUN_STATE_INMIGRATE) ||
|
||||
runstate_check(RUN_STATE_POSTMIGRATE)) {
|
||||
return;
|
||||
@ -979,6 +985,11 @@ static int interface_client_monitors_config(QXLInstance *sin,
|
||||
QXLRom *rom = memory_region_get_ram_ptr(&qxl->rom_bar);
|
||||
int i;
|
||||
|
||||
if (qxl->revision < 4) {
|
||||
trace_qxl_client_monitors_config_unsupported_by_device(qxl->id,
|
||||
qxl->revision);
|
||||
return 0;
|
||||
}
|
||||
/*
|
||||
* Older windows drivers set int_mask to 0 when their ISR is called,
|
||||
* then later set it to ~0. So it doesn't relate to the actual interrupts
|
||||
|
@ -1029,8 +1029,10 @@ qxl_send_events_vm_stopped(int qid, uint32_t events) "%d %d"
|
||||
qxl_set_guest_bug(int qid) "%d"
|
||||
qxl_interrupt_client_monitors_config(int qid, int num_heads, void *heads) "%d %d %p"
|
||||
qxl_client_monitors_config_unsupported_by_guest(int qid, uint32_t int_mask, void *client_monitors_config) "%d %X %p"
|
||||
qxl_client_monitors_config_unsupported_by_device(int qid, int revision) "%d revision=%d"
|
||||
qxl_client_monitors_config_capped(int qid, int requested, int limit) "%d %d %d"
|
||||
qxl_client_monitors_config_crc(int qid, unsigned size, uint32_t crc32) "%d %u %u"
|
||||
qxl_set_client_capabilities_unsupported_by_revision(int qid, int revision) "%d revision=%d"
|
||||
|
||||
# hw/qxl-render.c
|
||||
qxl_render_blit_guest_primary_initialized(void) ""
|
||||
|
Loading…
Reference in New Issue
Block a user