diff options
author | Gwenole Beauchesne <gwenole.beauchesne@intel.com> | 2014-06-04 11:17:52 +0200 |
---|---|---|
committer | Gwenole Beauchesne <gwenole.beauchesne@intel.com> | 2014-06-05 10:27:26 +0200 |
commit | 628c958f4881900548ed80be1286060db68e0115 (patch) | |
tree | 5b08f60f0304bfd45e22386d08548802f9268dd2 | |
parent | e9c2a677a04e911529966cccf71eb3a9ae59e6c3 (diff) | |
download | libva-intel-driver-628c958f4881900548ed80be1286060db68e0115.tar.gz libva-intel-driver-628c958f4881900548ed80be1286060db68e0115.tar.bz2 libva-intel-driver-628c958f4881900548ed80be1286060db68e0115.zip |
decoder: h264: only allocate tiled surfaces for Sandybridge an newer.
Don't allocate tiled surfaces on Ironlake platforms and earlier, stick
to linear surfaces.
This is a regression from 6d76944.
Reported-by: Haihao Xiang <haihao.xiang@intel.com>
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
-rw-r--r-- | src/i965_decoder_utils.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/i965_decoder_utils.c b/src/i965_decoder_utils.c index 9a5092e..ae5fd76 100644 --- a/src/i965_decoder_utils.c +++ b/src/i965_decoder_utils.c @@ -222,9 +222,11 @@ avc_ensure_surface_bo( /* (Re-)allocate the underlying surface buffer store, if necessary */ if (!obj_surface->bo || obj_surface->fourcc != hw_fourcc) { + struct i965_driver_data * const i965 = i965_driver_data(ctx); + i965_destroy_surface_storage(obj_surface); - va_status = i965_check_alloc_surface_bo(ctx, obj_surface, 1, - hw_fourcc, subsample); + va_status = i965_check_alloc_surface_bo(ctx, obj_surface, + i965->codec_info->has_tiled_surface, hw_fourcc, subsample); if (va_status != VA_STATUS_SUCCESS) return va_status; } |