Some features of IECP aren't enabled, and the corresponding fields must be set to 0 in VEBOX_IECP_STATE. Thanks for Peng's finding: The issue disappear when disable libdrm cache
This fixes https://bugs.freedesktop.org/show_bug.cgi?id=95349 Cc: peng.chen <[email protected]> Signed-off-by: Xiang, Haihao <[email protected]> --- src/gen75_vpp_vebox.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gen75_vpp_vebox.c b/src/gen75_vpp_vebox.c index 8d0569d..e124604 100644 --- a/src/gen75_vpp_vebox.c +++ b/src/gen75_vpp_vebox.c @@ -923,6 +923,7 @@ void hsw_veb_state_table_setup(VADriverContextP ctx, struct intel_vebox_context dri_bo *iecp_bo = proc_ctx->iecp_state_table.bo; dri_bo_map(iecp_bo, 1); proc_ctx->iecp_state_table.ptr = iecp_bo->virtual; + memset(proc_ctx->iecp_state_table.ptr, 0, 97 * 4); hsw_veb_iecp_std_table(ctx, proc_ctx); hsw_veb_iecp_ace_table(ctx, proc_ctx); @@ -2196,6 +2197,7 @@ void skl_veb_state_table_setup(VADriverContextP ctx, struct intel_vebox_context dri_bo *iecp_bo = proc_ctx->iecp_state_table.bo; dri_bo_map(iecp_bo, 1); proc_ctx->iecp_state_table.ptr = iecp_bo->virtual; + memset(proc_ctx->iecp_state_table.ptr, 0, 90 * 4); hsw_veb_iecp_std_table(ctx, proc_ctx); hsw_veb_iecp_ace_table(ctx, proc_ctx); -- 1.9.1 _______________________________________________ Libva mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/libva
