radeon/vcn: add and manage render picture list
authorBoyuan Zhang <boyuan.zhang@amd.com>
Fri, 15 Dec 2017 16:17:32 +0000 (11:17 -0500)
committerLeo Liu <leo.liu@amd.com>
Fri, 15 Dec 2017 21:04:31 +0000 (16:04 -0500)
commitf2bfd1cbb7e72945ca192845a1ad28426c7aea89
tree25d2a939ecbcd87b7e3198e6213c9fa067b4e484
parentd9727f31a82e0d064bd0588b8a1d2323379eac0b
radeon/vcn: add and manage render picture list

Create a list in decoder to store all render picture buffer pointers that
currently being used in reference picture lists.

During get message buffer call, check each pointer in render_pic_list[]
within given pic->ref[] list, remove pointer that no longer being used by
pic->ref[]. Then add current render surface pointer to the render_pic_list[]
and assign the associated index to result.curr_idx.

As a result, result.curr_idx will have the correct index to represent the
current render picture, instead of the previous increamenting values.

Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
src/gallium/drivers/radeon/radeon_vcn_dec.c