Re: [PATCH 1/2] vmwgfx: Emulate depth 32 framebuffers

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

 



On Sat, Oct 22, 2011 at 10:29:33AM +0200, Thomas Hellstrom wrote:
> From: Jakob Bornecrantz <jakob@xxxxxxxxxx>
> 
> Signed-off-by: Jakob Bornecrantz <jakob@xxxxxxxxxx>
> Signed-off-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
> ---
>  drivers/gpu/drm/vmwgfx/vmwgfx_kms.c |   10 +++++++++-
>  1 files changed, 9 insertions(+), 1 deletions(-)
> 
> diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
> index 39b99db..00ec619 100644
> --- a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
> +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
> @@ -679,6 +679,7 @@ static int do_dmabuf_define_gmrfb(struct drm_file *file_priv,
>  				  struct vmw_private *dev_priv,
>  				  struct vmw_framebuffer *framebuffer)
>  {
> +	int depth = framebuffer->base.depth;
>  	size_t fifo_size;
>  	int ret;
>  
> @@ -687,6 +688,13 @@ static int do_dmabuf_define_gmrfb(struct drm_file *file_priv,
>  		SVGAFifoCmdDefineGMRFB body;
>  	} *cmd;
>  
> +	/* Emulate RGBA support, contrary to svga_reg.h this is not
> +	 * supported by hosts. This is only a problem if we are reading

Uh, what if it becomes supported at some point? Should there be some check
against the host version?

(Thinking that some user might be running this older driver with a newer
host that des support 32 - won't that cause issues?)

> +	 * this value later and expecting what we uploaded back.
> +	 */
> +	if (depth == 32)
> +		depth = 24;
> +
>  	fifo_size = sizeof(*cmd);
>  	cmd = kmalloc(fifo_size, GFP_KERNEL);
>  	if (unlikely(cmd == NULL)) {
> @@ -697,7 +705,7 @@ static int do_dmabuf_define_gmrfb(struct drm_file *file_priv,
>  	memset(cmd, 0, fifo_size);
>  	cmd->header = SVGA_CMD_DEFINE_GMRFB;
>  	cmd->body.format.bitsPerPixel = framebuffer->base.bits_per_pixel;
> -	cmd->body.format.colorDepth = framebuffer->base.depth;
> +	cmd->body.format.colorDepth = depth;
>  	cmd->body.format.reserved = 0;
>  	cmd->body.bytesPerLine = framebuffer->base.pitch;
>  	cmd->body.ptr.gmrId = framebuffer->user_handle;
> -- 
> 1.7.4.4
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel@xxxxxxxxxxxxxxxxxxxxx
> http://lists.freedesktop.org/mailman/listinfo/dri-devel
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux