mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-04 20:00:11 +01:00
radeonsi: Add debug options to disable video decode/encode tiers
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36515>
This commit is contained in:
parent
fe94eb5bea
commit
66fd4b24b6
5 changed files with 27 additions and 1 deletions
|
|
@ -1755,6 +1755,14 @@ RadeonSI driver environment variables
|
|||
Disable register shadowing in userqueue. This will also disable userqueue mcbp.
|
||||
``novideotiling``
|
||||
Disable tiling for video.
|
||||
``nodectier1``
|
||||
Disable tier1 for video decode.
|
||||
``nodectier2``
|
||||
Disable tier2 for video decode.
|
||||
``nodectier3``
|
||||
Disable tier3 for video decode.
|
||||
``noenctier2``
|
||||
Disable tier2 for video encode.
|
||||
|
||||
r600 driver environment variables
|
||||
---------------------------------
|
||||
|
|
|
|||
|
|
@ -2760,6 +2760,9 @@ static void radeon_dec_destroy_fence(struct pipe_video_codec *decoder,
|
|||
|
||||
static bool radeon_dec_enable_tier3(struct si_context *sctx, uint32_t codec)
|
||||
{
|
||||
if (sctx->screen->multimedia_debug_flags & DBG(NO_DECODE_TIER3))
|
||||
return false;
|
||||
|
||||
if (sctx->vcn_ip_ver < VCN_5_0_0)
|
||||
return false;
|
||||
|
||||
|
|
@ -2768,6 +2771,9 @@ static bool radeon_dec_enable_tier3(struct si_context *sctx, uint32_t codec)
|
|||
|
||||
static bool radeon_dec_enable_tier2(struct si_context *sctx, uint32_t codec)
|
||||
{
|
||||
if (sctx->screen->multimedia_debug_flags & DBG(NO_DECODE_TIER2))
|
||||
return false;
|
||||
|
||||
if (sctx->vcn_ip_ver < VCN_3_0_0)
|
||||
return false;
|
||||
|
||||
|
|
@ -2777,6 +2783,9 @@ static bool radeon_dec_enable_tier2(struct si_context *sctx, uint32_t codec)
|
|||
|
||||
static bool radeon_dec_enable_tier1(struct si_context *sctx, uint32_t codec)
|
||||
{
|
||||
if (sctx->screen->multimedia_debug_flags & DBG(NO_DECODE_TIER1))
|
||||
return false;
|
||||
|
||||
if (sctx->vcn_ip_ver > VCN_2_6_0)
|
||||
return false;
|
||||
|
||||
|
|
|
|||
|
|
@ -2019,7 +2019,8 @@ struct pipe_video_codec *radeon_create_encoder(struct pipe_context *context,
|
|||
|
||||
ac_vcn_enc_init_cmds(&enc->cmd, sscreen->info.vcn_ip_version);
|
||||
|
||||
if (sscreen->info.vcn_ip_version >= VCN_5_0_0)
|
||||
if (sscreen->info.vcn_ip_version >= VCN_5_0_0 &&
|
||||
!(sscreen->multimedia_debug_flags & DBG(NO_ENCODE_TIER2)))
|
||||
enc->dpb_type = DPB_TIER_2;
|
||||
|
||||
if (enc->dpb_type == DPB_TIER_2)
|
||||
|
|
|
|||
|
|
@ -129,6 +129,10 @@ static const struct debug_named_value radeonsi_multimedia_debug_options[] = {
|
|||
{"noefc", DBG(NO_EFC), "Disable hardware based encoder colour format conversion."},
|
||||
{"lowlatencyenc", DBG(LOW_LATENCY_ENCODE), "Enable low latency encoding."},
|
||||
{"novideotiling", DBG(NO_VIDEO_TILING), "Disable tiling for video."},
|
||||
{"nodectier1", DBG(NO_DECODE_TIER1), "Disable tier1 for video decode."},
|
||||
{"nodectier2", DBG(NO_DECODE_TIER2), "Disable tier2 for video decode."},
|
||||
{"nodectier3", DBG(NO_DECODE_TIER3), "Disable tier3 for video decode."},
|
||||
{"noenctier2", DBG(NO_ENCODE_TIER2), "Disable tier2 for video encode."},
|
||||
|
||||
DEBUG_NAMED_VALUE_END /* must be last */
|
||||
};
|
||||
|
|
|
|||
|
|
@ -257,6 +257,10 @@ enum
|
|||
DBG_NO_EFC,
|
||||
DBG_LOW_LATENCY_ENCODE,
|
||||
DBG_NO_VIDEO_TILING,
|
||||
DBG_NO_DECODE_TIER1,
|
||||
DBG_NO_DECODE_TIER2,
|
||||
DBG_NO_DECODE_TIER3,
|
||||
DBG_NO_ENCODE_TIER2,
|
||||
};
|
||||
|
||||
enum
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue