radeonsi/vcn: Allow B-frames as L0 reference

Only B-frame as L1 reference is not supported.

Reviewed-by: David (Ming Qiang) Wu <David.Wu3@amd.com>
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36039>
This commit is contained in:
David Rosca
2025-07-08 08:06:04 +02:00
committed by Marge Bot
parent 2d6560611f
commit 45652a9876
@@ -538,11 +538,9 @@ static void radeon_vcn_enc_h264_get_param(struct radeon_encoder *enc,
enc->enc_pic.h264_enc_params.l1_reference_picture0_index = 0xffffffff;
}
if ((pic->ref_list0[0] != PIPE_H2645_LIST_REF_INVALID_ENTRY &&
pic->dpb[pic->ref_list0[0]].picture_type == PIPE_H2645_ENC_PICTURE_TYPE_B) ||
(pic->ref_list1[0] != PIPE_H2645_LIST_REF_INVALID_ENTRY &&
pic->dpb[pic->ref_list1[0]].picture_type == PIPE_H2645_ENC_PICTURE_TYPE_B))
RADEON_ENC_ERR("B-frame references not supported\n");
if (pic->ref_list1[0] != PIPE_H2645_LIST_REF_INVALID_ENTRY &&
pic->dpb[pic->ref_list1[0]].picture_type == PIPE_H2645_ENC_PICTURE_TYPE_B)
RADEON_ENC_ERR("B-frame as L1 reference not supported\n");
if (enc->dpb_type == DPB_TIER_2) {
for (uint32_t i = 0; i < ARRAY_SIZE(pic->dpb); i++) {