From 7c060b781da1942747942d4f2bb08de43033a1a8 Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Mon, 22 Jan 2024 11:28:22 +1000 Subject: [PATCH] radv: fix correct padding on uvd Fixes: 8a29291dbe6c ("radv/video: add h264 support for uvd") Reviewed-by: Samuel Pitoiset Part-of: (cherry picked from commit 6065671a7fbd1924a11db6cf1af075ad9e487305) --- .pick_status.json | 2 +- src/amd/vulkan/radv_video.c | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index 8552f818517..a5eb775b766 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -774,7 +774,7 @@ "description": "radv: fix correct padding on uvd", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "8a29291dbe6c61ce469f21a745724b59e702272a", "notes": null diff --git a/src/amd/vulkan/radv_video.c b/src/amd/vulkan/radv_video.c index 830a934fbbb..2e993e1adc9 100644 --- a/src/amd/vulkan/radv_video.c +++ b/src/amd/vulkan/radv_video.c @@ -1724,10 +1724,12 @@ radv_uvd_cmd_reset(struct radv_cmd_buffer *cmd_buffer) if (vid->sessionctx.mem) send_cmd(cmd_buffer, RDECODE_CMD_SESSION_CONTEXT_BUFFER, vid->sessionctx.mem->bo, vid->sessionctx.offset); send_cmd(cmd_buffer, RDECODE_CMD_MSG_BUFFER, cmd_buffer->upload.upload_bo, out_offset); + /* pad out the IB to the 16 dword boundary - otherwise the fw seems to be unhappy */ - radeon_check_space(cmd_buffer->device->ws, cmd_buffer->cs, 8); - for (unsigned i = 0; i < 8; i++) - radeon_emit(cmd_buffer->cs, 0x81ff); + int padsize = vid->sessionctx.mem ? 4 : 6; + radeon_check_space(cmd_buffer->device->ws, cmd_buffer->cs, padsize); + for (unsigned i = 0; i < padsize; i++) + radeon_emit(cmd_buffer->cs, PKT2_NOP_PAD); } VKAPI_ATTR void VKAPI_CALL