qxl: introduce hardware revision 5
-----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) iQIcBAABAgAGBQJeRRGGAAoJEEy22O7T6HE4y2wQANiIL9XyVIRz9fCF3fdRpxmZ 3dLQuwOa8Ms9oO+s9wncwlVkrMWKeSpS07yFN8kgGCs7sLlcuYKCLQQNQJzDfYTj vgSFafPNIXzLAKDp159Sn0NHkH0dwzEYHv59q3BVDw2bA6ah8BNTaqqnMEZsaLvm PLrwsahr4RAYiZoramyL+y1qbwbmlr/zvVys/6xtPJ+x8rs8jRrBHOg9a0R6NPe5 H5wVr7GJrNZPdy0b2R1usJ45MrhbHIULZjQjKgwXp9lfL9cgXHRG3dpIlXGLbB7u pgGSc/iIN5M1cwyYEiqxTKM3BO101PhaXTOHOT/aG5W5dRz8bbstwWTZ3Vms6SW3 qXzdqIfTcyvPbat1Q0kwrJt7sMroHlpe5tAbifW4Id26h9RqlOGxjr0eVv4ME0Pe epIoFB0cB7o6LwFKlY5aG0u9paw2tm5yV88lJLygT7JZ+AX06sLMK/gKZEUAcBFV vM7xSOV3l87K1VgZiARDMmhk7ePDeQ02+PvMf/UQzZX91P3wwVAGgsRGNFoamoVM rPipqqWvCVBz2zNfayeqL1mX/6IcDuJRuod5Bg3RoYO1pdux7A4LIH3sdMPuf8eI v0nC3J0FyUt24Kq4YVmQqhTV35Zyoe8ChgJFEP/+bDjPjj/ml4rMmURC555/dTXL PqX7kedp664nR/+xjtiG =HPYM -----END PGP SIGNATURE----- Merge remote-tracking branch 'remotes/kraxel/tags/vga-20200213-pull-request' into staging qxl: introduce hardware revision 5 # gpg: Signature made Thu 13 Feb 2020 09:06:14 GMT # gpg: using RSA key 4CB6D8EED3E87138 # gpg: Good signature from "Gerd Hoffmann (work) <kraxel@redhat.com>" [full] # gpg: aka "Gerd Hoffmann <gerd@kraxel.org>" [full] # gpg: aka "Gerd Hoffmann (private) <kraxel@gmail.com>" [full] # Primary key fingerprint: A032 8CFF B93A 17A7 9901 FE7D 4CB6 D8EE D3E8 7138 * remotes/kraxel/tags/vga-20200213-pull-request: qxl: introduce hardware revision 5 Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
commit
517c84cef7
@ -34,6 +34,8 @@ GlobalProperty hw_compat_4_2[] = {
|
|||||||
{ "vhost-blk-device", "seg_max_adjust", "off"},
|
{ "vhost-blk-device", "seg_max_adjust", "off"},
|
||||||
{ "usb-host", "suppress-remote-wake", "off" },
|
{ "usb-host", "suppress-remote-wake", "off" },
|
||||||
{ "usb-redir", "suppress-remote-wake", "off" },
|
{ "usb-redir", "suppress-remote-wake", "off" },
|
||||||
|
{ "qxl", "revision", "4" },
|
||||||
|
{ "qxl-vga", "revision", "4" },
|
||||||
};
|
};
|
||||||
const size_t hw_compat_4_2_len = G_N_ELEMENTS(hw_compat_4_2);
|
const size_t hw_compat_4_2_len = G_N_ELEMENTS(hw_compat_4_2);
|
||||||
|
|
||||||
|
@ -1309,7 +1309,8 @@ static void qxl_vga_ioport_write(void *opaque, uint32_t addr, uint32_t val)
|
|||||||
PCIQXLDevice *qxl = container_of(vga, PCIQXLDevice, vga);
|
PCIQXLDevice *qxl = container_of(vga, PCIQXLDevice, vga);
|
||||||
|
|
||||||
trace_qxl_io_write_vga(qxl->id, qxl_mode_to_string(qxl->mode), addr, val);
|
trace_qxl_io_write_vga(qxl->id, qxl_mode_to_string(qxl->mode), addr, val);
|
||||||
if (qxl->mode != QXL_MODE_VGA) {
|
if (qxl->mode != QXL_MODE_VGA &&
|
||||||
|
qxl->revision <= QXL_REVISION_STABLE_V12) {
|
||||||
qxl_destroy_primary(qxl, QXL_SYNC);
|
qxl_destroy_primary(qxl, QXL_SYNC);
|
||||||
qxl_soft_reset(qxl);
|
qxl_soft_reset(qxl);
|
||||||
}
|
}
|
||||||
@ -2121,6 +2122,10 @@ static void qxl_realize_common(PCIQXLDevice *qxl, Error **errp)
|
|||||||
pci_device_rev = QXL_REVISION_STABLE_V12;
|
pci_device_rev = QXL_REVISION_STABLE_V12;
|
||||||
io_size = pow2ceil(QXL_IO_RANGE_SIZE);
|
io_size = pow2ceil(QXL_IO_RANGE_SIZE);
|
||||||
break;
|
break;
|
||||||
|
case 5: /* qxl-5 */
|
||||||
|
pci_device_rev = QXL_REVISION_STABLE_V12 + 1;
|
||||||
|
io_size = pow2ceil(QXL_IO_RANGE_SIZE);
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
error_setg(errp, "Invalid revision %d for qxl device (max %d)",
|
error_setg(errp, "Invalid revision %d for qxl device (max %d)",
|
||||||
qxl->revision, QXL_DEFAULT_REVISION);
|
qxl->revision, QXL_DEFAULT_REVISION);
|
||||||
|
@ -144,7 +144,7 @@ typedef struct PCIQXLDevice {
|
|||||||
} \
|
} \
|
||||||
} while (0)
|
} while (0)
|
||||||
|
|
||||||
#define QXL_DEFAULT_REVISION QXL_REVISION_STABLE_V12
|
#define QXL_DEFAULT_REVISION (QXL_REVISION_STABLE_V12 + 1)
|
||||||
|
|
||||||
/* qxl.c */
|
/* qxl.c */
|
||||||
void *qxl_phys2virt(PCIQXLDevice *qxl, QXLPHYSICAL phys, int group_id);
|
void *qxl_phys2virt(PCIQXLDevice *qxl, QXLPHYSICAL phys, int group_id);
|
||||||
|
Loading…
Reference in New Issue
Block a user