[Spice-devel] [RFC 00/33] xspice using a shortcircuited driver

Alon Levy alevy at redhat.com
Wed Apr 27 08:55:49 PDT 2011


This patchset introduces a second target namely spiceqxl_drv.so that contains
a display driver, a keyboard and mouse driver, and they all use a single spice
server instance. Effectively this allows a spice server using a config file such
as:

Section "Device"
 Identifier "XSPICE"
 Driver "spiceqxl"
 Option "SpicePort" "6911"
EndSection

The series starts with some unrelated cleanup, adds a second target using
"-DXSPICE" for some mutual files (qxl_driver.c and qxl.h use it).

Please review.

Alon Levy (33):
  qxl.h: double include protection
  qxl_mem.c: fix pointer arithmatic warning (-Wpointer-arith)
  qxl_image.c: fix defined but unused warning
  qxl.h: move spice include right after system includes
  qxl_ring: keep qxl pointer
  partially replace outb with ioport_write
  use spice-protocol defines for ring sizes
  qxl_driver: add setup_slot helper
  qxl_driver: fix initialization from wrong pointer warning
  add config options (empty for now)
  qxl_driver: fix three incompatible pointer passed warnings
  qxl_driver: introduce helpers for memory map and unmap
  qxl_driver: whitespace fixes
  configure.ac: add check for spice-server (allowed to fail)
  configure.ac/Makefile.am: add SUPPORT_XSPICE
  xspice: use spiceqxl as name of xspice driver
  xspice: add spiceqxl_io_port, empty
  xspice: use SPICE_CFLAGS
  cleanup (add eol between system and non system includes)
  xspice: stop using pci and vga
  qxl_driver.c: whitespace fix
  xspice: allocate a single slot
  xspice: don't load ramdac and vgahw sub modules
  xspice: use spiceqxlModuleData as entry point
  xspice: implement map_helper, unmap_helper, add init_qxl_rom
  xspice: add SpicePort config option
  xspice: init spice server, add main loop
  xspice: add display interface
  xspice: add init_qxl_ram
  xspice: implement ioport_write
  xspice: add inputs (mouse and keyboard)
  xspice: README, config, launcher script
  xspice/qxl_ring: yield when ring is full

 README.xspice            |  109 +++++++++++++
 TODO.xspice              |   27 ++++
 configure.ac             |   10 ++
 spiceqxl.xorg.conf       |   15 ++
 src/Makefile.am          |   28 ++++
 src/qxl.h                |   95 +++++++++++-
 src/qxl_driver.c         |  384 ++++++++++++++++++++++++++++++++--------------
 src/qxl_image.c          |    2 +
 src/qxl_mem.c            |    2 +-
 src/qxl_ring.c           |   21 ++-
 src/qxl_surface.c        |    4 +-
 src/spiceqxl_display.c   |  319 ++++++++++++++++++++++++++++++++++++++
 src/spiceqxl_display.h   |   11 ++
 src/spiceqxl_driver.c    |  132 ++++++++++++++++
 src/spiceqxl_driver.h    |   11 ++
 src/spiceqxl_inputs.c    |  353 ++++++++++++++++++++++++++++++++++++++++++
 src/spiceqxl_inputs.h    |    9 +
 src/spiceqxl_io_port.c   |  242 +++++++++++++++++++++++++++++
 src/spiceqxl_io_port.h   |   13 ++
 src/spiceqxl_main_loop.c |  317 ++++++++++++++++++++++++++++++++++++++
 src/spiceqxl_main_loop.h |   10 ++
 xspice                   |   21 +++
 22 files changed, 2004 insertions(+), 131 deletions(-)
 create mode 100644 README.xspice
 create mode 100644 TODO.xspice
 create mode 100644 spiceqxl.xorg.conf
 create mode 100644 src/spiceqxl_display.c
 create mode 100644 src/spiceqxl_display.h
 create mode 100644 src/spiceqxl_driver.c
 create mode 100644 src/spiceqxl_driver.h
 create mode 100644 src/spiceqxl_inputs.c
 create mode 100644 src/spiceqxl_inputs.h
 create mode 100644 src/spiceqxl_io_port.c
 create mode 100644 src/spiceqxl_io_port.h
 create mode 100644 src/spiceqxl_main_loop.c
 create mode 100644 src/spiceqxl_main_loop.h
 create mode 100755 xspice

-- 
1.7.4.4



More information about the Spice-devel mailing list