summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-06-26qxl: qxl_unmap_memory: cleanup xspice (fixes segfault if spice client ↵xspice.v5Alon Levy1-0/+6
connected when server shutsdown)
2011-06-22xspice/qxl_ring: yield when ring is fullAlon Levy1-1/+5
2011-06-22xspice: README, config, launcher scriptAlon Levy4-0/+174
2011-06-22xspice: add inputs (mouse and keyboard)Alon Levy4-0/+370
uses xf86AddInputDriver, xf86PostButtonEvent, xf86PostMotionEvent and xf86PostKeyboardEvent reused xspice_get_spice_server to access the single spice server instance.
2011-06-22xspice: implement ioport_writeAlon Levy1-0/+181
2011-06-22xspice: add init_qxl_ramAlon Levy3-0/+55
2011-06-22xspice: add display interfaceAlon Levy5-0/+358
2011-06-22xspice: init spice server, add main loopAlon Levy5-0/+370
Initialize a SpiceServer instance, and implement SpiceCoreInterface, that is fd read, write notification and watchs (timers). The SpiceServer instance creation is wrapped in xspice_get_spice_server to allow access from the pointer and keyboard drivers introduced later. The fd implementation is off because Xserver doesn't allow us to be notified on write unblock, only read. Workaround is to poll.
2011-05-24xspice: add SpicePort config optionAlon Levy2-0/+6
2011-05-24xspice: implement map_helper, unmap_helper, add init_qxl_romAlon Levy5-0/+181
Memory is taken from malloc instead of from the pci bar. Adds shadow_rom to qxl_screen_t. Introduces init_qxl_rom, which is directly taken from the qxl device in qemu. Plenty of TODO's added in this commit about various constants and about factoring out the code to not do this copy paste from qemu.
2011-05-24xspice: use spiceqxlModuleData as entry pointAlon Levy1-1/+7
2011-05-24xspice: don't load ramdac and vgahw sub modulesAlon Levy1-3/+6
2011-05-24xspice: allocate a single slotAlon Levy1-0/+4
2011-05-24xspice: stop using pci and vgaAlon Levy2-10/+88
This ifdefs out all the parts in qxl_driver.c that are pci device specific and are not required by xspice. No functional change. The resulting spiceqxl_drv.so doesn't run.
2011-05-24xspice: add spiceqxl_io_port, empty implementationAlon Levy4-0/+24
2011-05-24xspice: use spiceqxl as name of xspice driverAlon Levy2-3/+8
Fixes a few places that have hardcoded "qxl" to use the already defined QXL_DRIVER_NAME.
2011-05-24xspice: add configure option and make targetAlon Levy2-0/+40
adds --enable-xspice, which builds an spiceqxl_drv.so target, and defines SUPPORT_XSPICE. Fails build if spice-server not found.
2011-05-24qxl_driver: introduce helpers for memory map and unmapAlon Levy1-20/+32
qxl_map_memory_helper and qxl_unmap_memory_helper introduced, here as a simple split, later different implementation if XSPICE defined will be added. Nicer then putting an ifdef inside the map/unmap functions.
2011-05-24qxl_driver: add setup_slot helperAlon Levy1-45/+42
used in qxl_reset. Later ifdefed with XSPICE, which only uses a single slot covering all memory (really it should just avoid calling the translation mechanism, but for now this is simple enough).
2011-05-24add config options (empty for now)Alon Levy2-0/+16
2011-05-24partially replace outb with ioport_writeAlon Levy4-9/+15
replace everywhere it is needed for xspice - places left out are ifdefed out later based on the same define mentioned in qxl.h, XSPICE.
2011-05-24qxl_ring: keep qxl pointerAlon Levy3-9/+12
Add a qxl_screen_t* member to qxl_ring to make generelizing outb to ioport_write easier in the next patch. This means we do an extra deref and addition for every outb, but it means the code becomes simpler for doing outb in qxl_drv.so and a function call for spiceqxl_drv.so
2011-05-24log git commit if any during loadAlon Levy2-0/+9
2011-05-24configure.ac: remove unused DRIVER_NAMEAlon Levy1-3/+0
2011-04-29cleanup (add eol between system and non system includes)pre_xspice_cleanupsAlon Levy1-0/+1
2011-04-29qxl_driver: whitespace fixesAlon Levy1-26/+26
removing whitespace in lines consisting only of it. most of those areas are touched later, but not all.
2011-04-29qxl_driver: fix three incompatible pointer passed warningsAlon Levy1-4/+4
2011-04-29qxl_driver: fix initialization from wrong pointer warningAlon Levy1-1/+1
2011-04-29use spice-protocol defines for ring sizesAlon Levy1-3/+3
2011-04-27qxl.h: move spice include right after system includesAlon Levy1-2/+1
2011-04-27qxl_image.c: fix defined but unused warningAlon Levy1-0/+2
2011-04-27qxl_mem.c: fix pointer arithmatic warning (-Wpointer-arith)Alon Levy1-1/+1
2011-04-27qxl.h: double include protectionAlon Levy1-0/+5
2011-03-20Fix VT switchingSøren Sandmann Pedersen4-3/+34
- Surfaces need to be evacuated before switching VT - The device must be reset - Framebuffer access must be turned off - Pixmaps created while switched away must be created in host memory.
2011-03-19Generate tighter damage for PolyFillRectSøren Sandmann Pedersen1-21/+14
https://bugzilla.redhat.com/show_bug.cgi?id=552000
2011-03-19Tiled upload of images after software fallback.Søren Sandmann Pedersen1-1/+26
Instead of uploading the full software image in one go, upload it in 512x512 tiles to avoid having to find huge huge blocks of memory and potentially running out.
2011-03-19Don't re-upload read-only surfaces after a software fallback.Søren Sandmann Pedersen1-14/+24
Surfaces that were used in a read-only way don't need to be uploaded again since they didn't change. This is a particularly important optimization for Composite since sources and masks there don't have tight damage tracking regions.
2011-02-14s/qxl_ram_header/QXLRam/Alon Levy3-37/+15
2011-02-14use structs from spice-protocol qxl_dev.hAlon Levy5-520/+93
A bunch of renames and just plain removal (where the struct was never used): * s/qxl_cursor_cmd/QXLCursorCmd/ * s/qxl_mode/QXLMode/ * s/qxl_command/QXLCommand/ * remove qxl_command_ext * s/qxl_rect/QXLRect/ * s/qxl_release_info/QXLReleaseInfo/ * remove QXLReleaseInfo_ext (prev qxl_release_info_ext) * s/qxl_clip/QXLClip/ * s/qxl_point/QXLPoint/ * s/qxl_pattern/QXLPattern/ * s/qxl_point16/QXLPoint16/ * s/qxl_brush/QXLBrush/ * s/qxl_mask/QXLQMask/ * s/QXL_BRUSH/SPICE_BRUSH/ * s/QXL_IMAGE/SPICE_IMAGE/ * s/qxl_image_descriptor/QXLImageDescriptor/ * s/qxl_data_chunk/QXLDataChunk/ * s/qxl_bitmap_format/SpiceBitmapFmt/ * s/qxl_bitmap/QXLBitmap/ * s/qxl_image/QXLImage/ * s/qxl_fill/QXLFill/ * s/qxl_opaque/QXLOpaque/ * s/qxl_copy/QXLCopy/ * s/qxl_transparent/QXLTransparent/ * s/qxl_alpha_blend/QXLAlphaBlend/ * s/qxl_copy_bits/QXLCopyBits/ * s/qxl_blend/QXLBlend/ * s/qxl_rop3/QXLRop3/ * s/qxl_line_attr/QXLLineAttr/ * s/qxl_stroke/QXLStroke/ * s/qxl_text/QXLText/ * use QXLBlackness,QXLInvers (typo needs fixing later), QXLWhiteness * s/QXL_CLIP_TYPE/SPICE_CLIP_TYPE/ * s/qxl_compat_drawable/QXLCompatDrawable/ * s/qxl_drawable/QXLDrawable/ * s/qxl_surface_cmd/QXLSurfaceCmd/ * remove qxl_compat_update_cmd * remove qxl_update_cmd * remove QXL_CURSOR_DEVICE_DATA_SIZE * s/CURSOR_TYPE/SPICE_CURSOR_TYPE/ * s/qxl_cursor/QXLCursor/ * s/qxl_rom/QXLRom/ * remove QXL_SURF_TYPE_PRIMARY * s/qxl_surface_create/QXLSurfaceCreate/
2011-02-14use spice-protocol qxl_dev.h enumsAlon Levy2-98/+7
2011-02-14build: add spice-protocol depAlon Levy2-1/+3
2011-02-14qxl_driver: remove unused variable (found by gcc 4.6.0)Alon Levy1-2/+0
2011-02-14gcc-4.6.0 fix: cast unmatching function pointersAlon Levy1-6/+6
2011-01-26Bump version numberSøren Sandmann Pedersen1-1/+1
2011-01-26Remove calls to SourceValidate() from uxa-damage.cSøren Sandmann Pedersen1-20/+0
These were kludges and are not necessary with new servers. Note that they were never necessary for the QXL driver because we generally don't use software cursors.
2011-01-26Make it compile with and without dixLookupPrivate() changes.Søren Sandmann Pedersen5-2/+44
2011-01-26Only add images to the cache if they are 128x128 or biggerSøren Sandmann1-3/+21
Keep track of how many live images there are, for debugging purposes.
2011-01-26Add debugging codeSøren Sandmann2-93/+176
2011-01-26More explicit life cycle managementSøren Sandmann Pedersen6-137/+227
2011-01-26Add a surface cacheSøren Sandmann Pedersen3-136/+345