// SPDX-License-Identifier: MIT /* * Copyright (C) 2016-2017 Oracle Corporation * This file is based on qxl_irq.c * Copyright 2013 Red Hat Inc. * Authors: Dave Airlie * Alon Levy * Michael Thayer <michael.thayer@oracle.com, * Hans de Goede <hdegoede@redhat.com>
*/
if (!(host_flags & HGSMIHOSTFLAGS_IRQ)) return IRQ_NONE;
/* * Due to a bug in the initial host implementation of hot-plug irqs, * the hot-plug and cursor capability flags were never cleared. * Fortunately we can tell when they would have been set by checking * that the VSYNC flag is not set.
*/ if (host_flags &
(HGSMIHOSTFLAGS_HOTPLUG | HGSMIHOSTFLAGS_CURSOR_CAPABILITIES) &&
!(host_flags & HGSMIHOSTFLAGS_VSYNC))
vbox_report_hotplug(vbox);
vbox_clear_irq();
return IRQ_HANDLED;
}
/* * Check that the position hints provided by the host are suitable for GNOME * shell (i.e. all screens disjoint and hints for all enabled screens) and if * not replace them with default ones. Providing valid hints improves the * chances that we will get a known screen layout for pointer mapping.
*/ staticvoid validate_or_set_position_hints(struct vbox_private *vbox)
{ struct vbva_modehint *hintsi, *hintsj; bool valid = true;
u16 currentx = 0; int i, j;
for (i = 0; i < vbox->num_crtcs; ++i) { for (j = 0; j < i; ++j) {
hintsi = &vbox->last_mode_hints[i];
hintsj = &vbox->last_mode_hints[j];
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.