nv50: allow non-nv12 buffers to be created, just pass them through to vl
authorIlia Mirkin <imirkin@alum.mit.edu>
Sat, 17 Aug 2013 14:53:09 +0000 (10:53 -0400)
committerMaarten Lankhorst <maarten.lankhorst@canonical.com>
Sat, 17 Aug 2013 15:58:36 +0000 (17:58 +0200)
Since we expose non-NV12 formats as supported when there is no decoer
profile selected, make sure that those formats are actually allowed to
be allocated.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Tested-by: Emil Velikov <emil.l.velikov@gmail.com>
Cc: "9.2" <mesa-stable@lists.freedesktop.org>
src/gallium/drivers/nv50/nv84_video.c

index 2167b024eb5bc99b99b37918f0a331b3a32bcc8f..8c3c3b796c3cf74d67c031514d22f83fcc8cdbf9 100644 (file)
@@ -624,17 +624,13 @@ nv84_video_buffer_create(struct pipe_context *pipe,
    union nouveau_bo_config cfg;
    unsigned bo_size;
 
-   if (getenv("XVMC_VL"))
+   if (getenv("XVMC_VL") || template->buffer_format != PIPE_FORMAT_NV12)
       return vl_video_buffer_create(pipe, template);
 
    if (!template->interlaced) {
       debug_printf("Require interlaced video buffers\n");
       return NULL;
    }
-   if (template->buffer_format != PIPE_FORMAT_NV12) {
-      debug_printf("Must use NV12 format\n");
-      return NULL;
-   }
    if (template->chroma_format != PIPE_VIDEO_CHROMA_FORMAT_420) {
       debug_printf("Must use 4:2:0 format\n");
       return NULL;