summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXiang, Haihao <haihao.xiang@intel.com>2015-07-23 10:05:37 +0800
committerXiang, Haihao <haihao.xiang@intel.com>2015-09-06 15:13:57 +0800
commit8e8d5487b09cd1d8f421e3147d671c4c35fdb039 (patch)
tree537c4f39a4d33a5016dfba4a4383895fe8bc1a9e
parent8e12b815487b117a53b16642cce95a9a7cce2620 (diff)
encode/hevc: fix HEVC encode on SKL GT3
GT3 has 2 BSD rings, but HEVC commands can be only dispatched to BSD ring 0. Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com> Reviewed-by: Zhao Yakui <yakui.zhao@intel.com> (cherry picked from commit 611d8ea9d75dc026c203e3ebe53b434769d4587c)
-rw-r--r--src/gen9_mfc_hevc.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/gen9_mfc_hevc.c b/src/gen9_mfc_hevc.c
index 306abd9..e52e408 100644
--- a/src/gen9_mfc_hevc.c
+++ b/src/gen9_mfc_hevc.c
@@ -1783,6 +1783,7 @@ gen9_hcpe_hevc_pipeline_programing(VADriverContextP ctx,
struct encode_state *encode_state,
struct intel_encoder_context *encoder_context)
{
+ struct i965_driver_data *i965 = i965_driver_data(ctx);
struct intel_batchbuffer *batch = encoder_context->base.batch;
dri_bo *slice_batch_bo;
@@ -1793,7 +1794,10 @@ gen9_hcpe_hevc_pipeline_programing(VADriverContextP ctx,
#endif
// begin programing
- intel_batchbuffer_start_atomic_bcs(batch, 0x4000);
+ if (i965->intel.has_bsd2)
+ intel_batchbuffer_start_atomic_bcs_override(batch, 0x4000, BSD_RING0);
+ else
+ intel_batchbuffer_start_atomic_bcs(batch, 0x4000);
intel_batchbuffer_emit_mi_flush(batch);
// picture level programing