Features/PCIMultipleOutput

From Spice

Contents

Single PCI card multiple outputs

Summary

Teach qemu's qxl device to provide multiple outputs.

Owner

  • Alon Levy

Current Status

Description

Rational

We currently use four different PCI cards to enable four monitors output. This has a few limitations:

  • Requires our X driver to support Xinerama instead of RandR (or alternatively teach RandR to work with multiple PCI cards)
  • Takes more then one PCI slot (as we don't support multifunction=on, so this is a real problem)
  • Fragments the PCI BARs,
    • instead of: 256MB devram, 256MB vram
    • or even: 196MB devram, 196MB vram (due to 99%_limit(4) == 196, while 99%_limit(1) * 4 = 256).
    • we have: [64,64,64,64] devram, [64,64,64,64] vram

Requirements

  • Backward compatible - all existing drivers still works.
  • Initially do static allocation, i.e. -device qxl,monitors=4
  • Later dynamically:
    • cards have support for reporting inserted jacks. Is there support for creating jacks on the fly (XDDM/WDDM/X&Linux) ?