[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v13 1/8] tools: Add vga=vmware



On Sat, Nov 28, 2015 at 04:44:58PM -0500, Don Slutz wrote:
> From: Don Slutz <dslutz@xxxxxxxxxxx>
> 
> This allows use of QEMU's VMware emulated video card
> 
> NOTE: vga=vmware is not supported by device_model_version=qemu-xen-traditional
> 
> Signed-off-by: Don Slutz <dslutz@xxxxxxxxxxx>
> CC: Don Slutz <don.slutz@xxxxxxxxx>
> Acked-by: Ian Campbell <ian.campbell@xxxxxxxxxx>

Reviewed-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
> ---
> v13:
>   Added Acked-by: Ian Campbell
> 
> v12:
>   Dropped LIBXL_HAVE_LIBXL_VGA_INTERFACE_TYPE_VMWARE
>   This means that the later patch that defines LIBXL_HAVE_VMWARE
>   is now also required.
> 
> v11:
>   Dropped support for Qemu-trad.
>   Also changed later patchs to not need this one.
> 
> v10: New at v10.
> 
>   Was part of "tools: Add vmware_hwver support"
> 
> 
>  docs/man/xl.cfg.pod.5       | 4 +++-
>  tools/libxl/libxl_dm.c      | 9 +++++++++
>  tools/libxl/libxl_types.idl | 1 +
>  tools/libxl/xl_cmdimpl.c    | 2 ++
>  4 files changed, 15 insertions(+), 1 deletion(-)
> 
> diff --git a/docs/man/xl.cfg.pod.5 b/docs/man/xl.cfg.pod.5
> index 3b695bd..9a5744d 100644
> --- a/docs/man/xl.cfg.pod.5
> +++ b/docs/man/xl.cfg.pod.5
> @@ -1547,7 +1547,7 @@ This option is deprecated, use vga="stdvga" instead.
>  
>  =item B<vga="STRING">
>  
> -Selects the emulated video card (none|stdvga|cirrus|qxl).
> +Selects the emulated video card (none|stdvga|cirrus|qxl|vmware).
>  The default is cirrus.
>  
>  In general, QXL should work with the Spice remote display protocol
> @@ -1555,6 +1555,8 @@ for acceleration, and QXL driver is necessary in guest 
> in this case.
>  QXL can also work with the VNC protocol, but it will be like a standard
>  VGA without acceleration.
>  
> +NOTE: vmware is not supported on B<device_model_version = 
> "qemu-xen-traditional">
> +
>  =item B<vnc=BOOLEAN>
>  
>  Allow access to the display via the VNC protocol.  This enables the
> diff --git a/tools/libxl/libxl_dm.c b/tools/libxl/libxl_dm.c
> index a4934df..c76fd90 100644
> --- a/tools/libxl/libxl_dm.c
> +++ b/tools/libxl/libxl_dm.c
> @@ -529,6 +529,10 @@ static int libxl__build_device_model_args_old(libxl__gc 
> *gc,
>          case LIBXL_VGA_INTERFACE_TYPE_NONE:
>              flexarray_append_pair(dm_args, "-vga", "none");
>              break;
> +        case LIBXL_VGA_INTERFACE_TYPE_VMWARE:
> +            LOG(ERROR, "vga=vmware is not supported by "
> +                "qemu-xen-traditional");
> +            return ERROR_INVAL;
>          case LIBXL_VGA_INTERFACE_TYPE_QXL:
>              break;
>          }
> @@ -969,6 +973,11 @@ static int libxl__build_device_model_args_new(libxl__gc 
> *gc,
>                  
> GCSPRINTF("qxl-vga,vram_size_mb=%"PRIu64",ram_size_mb=%"PRIu64,
>                  (b_info->video_memkb/2/1024), (b_info->video_memkb/2/1024) ) 
> );
>              break;
> +        case LIBXL_VGA_INTERFACE_TYPE_VMWARE:
> +            flexarray_append_pair(dm_args, "-device",
> +                GCSPRINTF("vmware-svga,vgamem_mb=%d",
> +                libxl__sizekb_to_mb(b_info->video_memkb)));
> +            break;
>          }
>  
>          if (b_info->u.hvm.boot) {
> diff --git a/tools/libxl/libxl_types.idl b/tools/libxl/libxl_types.idl
> index cf3730f..4f46594 100644
> --- a/tools/libxl/libxl_types.idl
> +++ b/tools/libxl/libxl_types.idl
> @@ -207,6 +207,7 @@ libxl_vga_interface_type = 
> Enumeration("vga_interface_type", [
>      (2, "STD"),
>      (3, "NONE"),
>      (4, "QXL"),
> +    (5, "VMWARE"),
>      ], init_val = "LIBXL_VGA_INTERFACE_TYPE_CIRRUS")
>  
>  libxl_vendor_device = Enumeration("vendor_device", [
> diff --git a/tools/libxl/xl_cmdimpl.c b/tools/libxl/xl_cmdimpl.c
> index 2b6371d..93d5295 100644
> --- a/tools/libxl/xl_cmdimpl.c
> +++ b/tools/libxl/xl_cmdimpl.c
> @@ -2260,6 +2260,8 @@ skip_vfb:
>                  b_info->u.hvm.vga.kind = LIBXL_VGA_INTERFACE_TYPE_NONE;
>              } else if (!strcmp(buf, "qxl")) {
>                  b_info->u.hvm.vga.kind = LIBXL_VGA_INTERFACE_TYPE_QXL;
> +            } else if (!strcmp(buf, "vmware")) {
> +                b_info->u.hvm.vga.kind = LIBXL_VGA_INTERFACE_TYPE_VMWARE;
>              } else {
>                  fprintf(stderr, "Unknown vga \"%s\" specified\n", buf);
>                  exit(1);
> -- 
> 1.8.3.1
> 

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.