decoder: h264: don't allocate bottom DMV buffer on Broadwell.
authorGwenole Beauchesne <gwenole.beauchesne@intel.com>
Wed, 4 Jun 2014 08:36:28 +0000 (10:36 +0200)
committerGwenole Beauchesne <gwenole.beauchesne@intel.com>
Thu, 5 Jun 2014 08:27:32 +0000 (10:27 +0200)
Broadwell now uses a unique DMV buffer, irrespective of any field
coding mode. The dmv_buffer is not used, so it doesn't need to be
allocated at all.

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
src/gen8_mfd.c

index 10495d8..a080504 100644 (file)
@@ -78,9 +78,8 @@ gen8_mfd_init_avc_surface(VADriverContextP ctx,
         obj_surface->private_data = gen7_avc_surface;
     }
 
-    gen7_avc_surface->dmv_bottom_flag = (pic_param->pic_fields.bits.field_pic_flag &&
-                                         !pic_param->seq_fields.bits.direct_8x8_inference_flag);
-
+    /* DMV buffers now relate to the whole frame, irrespective of
+       field coding modes */
     if (gen7_avc_surface->dmv_top == NULL) {
         gen7_avc_surface->dmv_top = dri_bo_alloc(i965->intel.bufmgr,
                                                  "direct mv w/r buffer",
@@ -88,15 +87,6 @@ gen8_mfd_init_avc_surface(VADriverContextP ctx,
                                                  0x1000);
         assert(gen7_avc_surface->dmv_top);
     }
-
-    if (gen7_avc_surface->dmv_bottom_flag &&
-        gen7_avc_surface->dmv_bottom == NULL) {
-        gen7_avc_surface->dmv_bottom = dri_bo_alloc(i965->intel.bufmgr,
-                                                    "direct mv w/r buffer",
-                                                    width_in_mbs * height_in_mbs * 128,                                                    
-                                                    0x1000);
-        assert(gen7_avc_surface->dmv_bottom);
-    }
 }
 
 static void