[Spice-devel] [spice-protocol PATCH 00/46] refactor for later drm addition
Alon Levy
alevy at redhat.com
Tue Apr 10 05:01:56 PDT 2012
On Tue, Apr 10, 2012 at 02:49:56PM +0300, Alon Levy wrote:
Eek, this isn't spice-protocol of course, it's xf86-video-qxl. Other
then that, review away!
> This patchset has been tested with latest Xorg and qxl, and with Xspice. It
> doesn't introduce any new functionality. It adds a callback holder struct
> called qxlhw that will abstract the differences between the user space driver
> and the drm driver. This will allow continued development in the same
> repository.
>
> I'll appreciate any comments. To see just the callbacks added to comment on the
> interface itself and not on the lengthy and mechanical patchset see:
>
> http://cgit.freedesktop.org/~alon/xf86-video-qxl/tree/src/qxlhw.h?h=qxlhw.v1
>
> Any feedback appreciated.
>
> Alon Levy (46):
> io_port_write: rename xspice implementation
> qxl_ring.h: introduce
> qxl_mem.h: split from qxl.h
> qxlhw: introducing hardware access callbacks.
> qxl: add qxlhw reference to qxl_screen_t, initialized in qxl_pre_init
> qxlhw: move ram, rom, ram_header to qxlhw_pci.h
> qxlhw: add qxlhw_update_area
> qxl->qxlhw: move save/restore_state
> qxl_driver: remove another outb
> qxlhw: move handle_oom, data_alloc, data_free from qxl_driver
> qxlhw: add and use qxlhw_create_primary_surface
> remove qxl_handle_oom and qxl->io_base
> qxlhw: add qxlhw_push_cursor
> qxlhw change: qxl_surface: use qxlhw_push_surface_cmd
> qxl_surface: remove whitespace at ends of lines
> qxlhw: qxl_surface: use qxlhw_surface_alloc, qxlhw_surface_free
> qxlhw: qxl_surface: use qxlhw_push_drawable
> qxl_image: cleanup
> qxlhw: qxl_surface: use init_drawable
> qxlhw: qxl_surface: split qxlhw_image_alloc inside qxl_surface
> qxlhw: add qxlhw_pci_image_alloc (moved from qxl_image)
> remove last user of qxl_allocnf
> remove qxl_allocnf (garbage collect still used)
> qxlhw: add qxlhw_pci_image_free
> qxlhw: qxl_screen_t: remove command_ring
> qxlhw: qxl_surface: remove last user of qxl_garbage_collect
> qxlhw: qxl_driver.c: remove qxl_garbage_collect (moved to
> qxlhw_pci.c)
> qxlhw: qxl_driver: remove qxl_driver_t.release_ring
> qxlhw: qxl.h: remove virtual_address
> qxlhw: qxl_surface: move src_bitmap address storage to
> qxlhw_pci:qxlhw_make_drawable
> qxlhw: qxl.h: remove physical_address
> qxlhw: qxl.h: remove all mem_slot references from qxl_screen_t
> qxlhw: qxl.h: remove qxl_notify_oom
> qxl_driver: add and use qxlhw_clear_memory
> qxlhw: qxl_surface: add and use qxlhw_get_n_surfaces
> qxlhw: qxl.h: remove qxl_mem users
> qxlhw: qxl_surface: use qxlhw_ref_primary_surface
> qxlhw: qxl.h: remove io_pages* from qxl_screen_t
> qxlhw: move and use qxlhw_screen_init
> qxlhw: qxl_driver: use qxlhw_check_device
> spiceqxl: remove implementation of qxl_set_mode, not needed for
> Xspice
> qxl_surface: remove push_surface_cmd, use qxlhw_push_surface_cmd
> directly
> qxlhw: qxl_driver: qxl_pre_init: don't access rom directly
> qxlhw: qxl_surface: use qxlhw_get_mm_time
> qxlhw: qxlhw_pci_get_{ram,rom,ram_header} are now xspice only
> qxlhw: add and use qxlhw_pci_get_shadow_rom, remove
> qxl_screen_t.shadow_rom
>
> src/Makefile.am | 4 +
> src/qxl.h | 148 +------
> src/qxl_cursor.c | 59 ++-
> src/qxl_driver.c | 558 ++------------------------
> src/qxl_image.c | 109 +-----
> src/qxl_mem.c | 1 +
> src/qxl_mem.h | 20 +
> src/qxl_ring.c | 10 +-
> src/qxl_ring.h | 36 ++
> src/qxl_surface.c | 411 ++++++++-----------
> src/qxlhw.c | 146 +++++++
> src/qxlhw.h | 113 ++++++
> src/qxlhw_pci.c | 1023 ++++++++++++++++++++++++++++++++++++++++++++++++
> src/qxlhw_pci.h | 24 ++
> src/spiceqxl_display.c | 28 +-
> src/spiceqxl_driver.c | 6 +-
> src/spiceqxl_io_port.c | 52 +--
> 17 files changed, 1652 insertions(+), 1096 deletions(-)
> create mode 100644 src/qxl_mem.h
> create mode 100644 src/qxl_ring.h
> create mode 100644 src/qxlhw.c
> create mode 100644 src/qxlhw.h
> create mode 100644 src/qxlhw_pci.c
> create mode 100644 src/qxlhw_pci.h
>
> --
> 1.7.9.3
>
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/spice-devel
More information about the Spice-devel
mailing list