video: driver: handle dpb list property

- subscribe for dpb list property in combined
 mode on output port.
- copy dpb list property payload from fw to
 static array.
- using this array, mark read_only list buffers
 as non-reference if not part of array. if count
 of such buffers is greater than output min count,
 send to fw for release.
- once fw returns them, destroy these buffers.
- unmap stale output mappings due to lazy unmap feature.
- unify release internal functions into common function.

Change-Id: Id32f04efb19eecaff453cc4383ee8296a0246263
Signed-off-by: Darshana Patil <darshana@codeaurora.org>
このコミットが含まれているのは:
Darshana Patil
2021-04-02 16:50:52 -07:00
コミット 23605ffffb
10個のファイルの変更450行の追加282行の削除

ファイルの表示

@@ -63,6 +63,7 @@ struct msm_vidc_buffers_info {
struct msm_vidc_buffers input;
struct msm_vidc_buffers output;
struct msm_vidc_buffers read_only;
struct msm_vidc_buffers release;
struct msm_vidc_buffers input_meta;
struct msm_vidc_buffers output_meta;
struct msm_vidc_buffers bin;
@@ -149,6 +150,6 @@ struct msm_vidc_inst {
u64 last_qbuf_time_ns;
bool vb2q_init;
u32 max_input_data_size;
u32 dpb_list_payload[MAX_DPB_LIST_ARRAY_SIZE];
};
#endif // _MSM_VIDC_INST_H_