/linux/drivers/media/platform/verisilicon/ |
H A D | hantro_h264.c | 238 const struct v4l2_h264_dpb_entry *dpb = ctx->h264_dec.dpb; in prepare_table() local 244 tbl->poc[i * 2] = dpb[i].top_field_order_cnt; in prepare_table() 245 tbl->poc[i * 2 + 1] = dpb[i].bottom_field_order_cnt; in prepare_table() 247 if (!(dpb[i].flags & V4L2_H264_DPB_ENTRY_FLAG_VALID)) in prepare_table() 258 if (dpb[i].fields & V4L2_H264_TOP_FIELD_REF) in prepare_table() 261 if (dpb[i].fields & V4L2_H264_BOTTOM_FIELD_REF) in prepare_table() 264 if (dpb[i].flags & V4L2_H264_DPB_ENTRY_FLAG_LONG_TERM) { in prepare_table() 271 if (dpb[i].flags & V4L2_H264_DPB_ENTRY_FLAG_LONG_TERM) in prepare_table() 299 DECLARE_BITMAP(new, ARRAY_SIZE(dec_param->dpb)) = { 0, }; in update_dpb() 300 DECLARE_BITMAP(used, ARRAY_SIZE(dec_param->dpb)) = { 0, }; in update_dpb() [all …]
|
H A D | hantro_g2_hevc_dec.c | 368 const struct v4l2_hevc_dpb_entry *dpb = decode_params->dpb; in set_ref() local 418 char poc_diff = decode_params->pic_order_cnt_val - dpb[i].pic_order_cnt_val; in set_ref() 445 luma_addr = hantro_hevc_get_ref_buf(ctx, dpb[i].pic_order_cnt_val); in set_ref() 454 if (dpb[i].flags & V4L2_HEVC_DPB_ENTRY_LONG_TERM_REFERENCE) in set_ref()
|
H A D | hantro_hw.h | 116 struct v4l2_h264_dpb_entry dpb[HANTRO_H264_DPB_SIZE]; member
|
/linux/drivers/media/platform/mediatek/vcodec/decoder/vdec/ |
H A D | vdec_h264_req_common.c | 50 const struct slice_h264_dpb_entry *dpb; in mtk_vdec_h264_fill_dpb_info() local 59 dpb = &decode_params->dpb[index]; in mtk_vdec_h264_fill_dpb_info() 60 if (!(dpb->flags & V4L2_H264_DPB_ENTRY_FLAG_ACTIVE)) { in mtk_vdec_h264_fill_dpb_info() 65 vb = vb2_find_buffer(vq, dpb->reference_ts); in mtk_vdec_h264_fill_dpb_info() 69 index, dpb->reference_ts); in mtk_vdec_h264_fill_dpb_info() 74 if (!(dpb->flags & V4L2_H264_DPB_ENTRY_FLAG_LONG_TERM)) in mtk_vdec_h264_fill_dpb_info() 198 const struct v4l2_h264_dpb_entry dpb[V4L2_H264_NUM_DPB_ENTRIES]) in mtk_vdec_h264_copy_decode_params() 204 for (i = 0; i < ARRAY_SIZE(dst_params->dpb); i++) { in mtk_vdec_h264_copy_decode_params() 205 dst_entry = &dst_params->dpb[i]; in mtk_vdec_h264_copy_decode_params() 206 src_entry = &dpb[i]; in mtk_vdec_h264_copy_decode_params() [all …]
|
H A D | vdec_h264_req_common.h | 138 struct slice_h264_dpb_entry dpb[V4L2_H264_NUM_DPB_ENTRIES]; member 249 const struct v4l2_h264_dpb_entry dpb[V4L2_H264_NUM_DPB_ENTRIES]); 258 struct v4l2_h264_dpb_entry *dpb);
|
H A D | vdec_hevc_req_multi_if.c | 202 struct slice_hevc_dpb_entry dpb[V4L2_HEVC_DPB_ENTRIES_NUM_MAX]; member 396 const struct slice_hevc_dpb_entry *dpb; in vdec_hevc_fill_dpb_info() local 403 dpb = &decode_params->dpb[index]; in vdec_hevc_fill_dpb_info() 407 vb = vb2_find_buffer(vq, dpb->timestamp); in vdec_hevc_fill_dpb_info() 411 index, dpb->timestamp); in vdec_hevc_fill_dpb_info() 415 hevc_dpb_info[index].field = dpb->field_pic; in vdec_hevc_fill_dpb_info() 557 const struct v4l2_hevc_dpb_entry dpb[V4L2_HEVC_DPB_ENTRIES_NUM_MAX]) in vdec_hevc_copy_decode_params() 563 for (i = 0; i < ARRAY_SIZE(dst_param->dpb); i++) { in vdec_hevc_copy_decode_params() 564 dst_entry = &dst_param->dpb[i]; in vdec_hevc_copy_decode_params() 565 src_entry = &dpb[i]; in vdec_hevc_copy_decode_params() [all …]
|
H A D | vdec_h264_req_if.c | 93 struct v4l2_h264_dpb_entry dpb[16]; member 129 mtk_vdec_h264_update_dpb(dec_params, inst->dpb); in get_vdec_decode_parameters() 135 dec_params, inst->dpb); in get_vdec_decode_parameters() 141 inst->dpb); in get_vdec_decode_parameters()
|
H A D | vdec_h264_req_multi_if.c | 169 struct v4l2_h264_dpb_entry dpb[16]; member 249 mtk_vdec_h264_update_dpb(dec_params, inst->dpb); in get_vdec_sig_decode_parameters() 255 mtk_vdec_h264_copy_decode_params(&slice_param->decode_params, dec_params, inst->dpb); in get_vdec_sig_decode_parameters() 260 v4l2_h264_init_reflist_builder(&reflist_builder, dec_params, sps, inst->dpb); in get_vdec_sig_decode_parameters() 289 mtk_vdec_h264_update_dpb(dec_params, inst->dpb); in vdec_h264_slice_fill_decode_reflist() 292 inst->dpb); in vdec_h264_slice_fill_decode_reflist() 299 inst->dpb); in vdec_h264_slice_fill_decode_reflist()
|
H A D | vdec_vp9_req_lat_if.c | 464 struct vdec_vp9_slice_ref dpb[VB2_MAX_FRAME]; member 1698 instance->dpb[vb->index].width = w; in vdec_vp9_slice_setup_core_buffer() 1699 instance->dpb[vb->index].height = h; in vdec_vp9_slice_setup_core_buffer() 1715 ref->frame_width = instance->dpb[idx].width; in vdec_vp9_slice_setup_core_buffer() 1716 ref->frame_height = instance->dpb[idx].height; in vdec_vp9_slice_setup_core_buffer()
|
/linux/drivers/staging/media/rkvdec/ |
H A D | rkvdec-h264.c | 640 const struct v4l2_h264_dpb_entry *dpb = dec_params->dpb; in assemble_hw_pps() local 725 for (i = 0; i < ARRAY_SIZE(dec_params->dpb); i++) { in assemble_hw_pps() 728 if (dpb[i].flags & V4L2_H264_DPB_ENTRY_FLAG_LONG_TERM) in assemble_hw_pps() 741 for (i = 0; i < ARRAY_SIZE(dec_params->dpb); i++) { in lookup_ref_buf_idx() 743 const struct v4l2_h264_dpb_entry *dpb = run->decode_params->dpb; in lookup_ref_buf_idx() local 747 if (dpb[i].flags & V4L2_H264_DPB_ENTRY_FLAG_ACTIVE) { in lookup_ref_buf_idx() 748 buf = vb2_find_buffer(cap_q, dpb[i].reference_ts); in lookup_ref_buf_idx() 751 dpb[i].reference_ts); in lookup_ref_buf_idx() 763 const struct v4l2_h264_dpb_entry *dpb = dec_params->dpb; in assemble_hw_rps() local 779 for (i = 0; i < ARRAY_SIZE(dec_params->dpb); i++) { in assemble_hw_rps() [all …]
|
/linux/drivers/media/v4l2-core/ |
H A D | v4l2-h264.c | 34 const struct v4l2_h264_dpb_entry dpb[V4L2_H264_NUM_DPB_ENTRIES]) in v4l2_h264_init_reflist_builder() 56 if (!(dpb[i].flags & V4L2_H264_DPB_ENTRY_FLAG_ACTIVE)) in v4l2_h264_init_reflist_builder() 59 if (dpb[i].flags & V4L2_H264_DPB_ENTRY_FLAG_LONG_TERM) in v4l2_h264_init_reflist_builder() 68 if (!b->refs[i].longterm && dpb[i].frame_num > cur_frame_num) in v4l2_h264_init_reflist_builder() 69 b->refs[i].frame_num = (int)dpb[i].frame_num - in v4l2_h264_init_reflist_builder() 72 b->refs[i].frame_num = dpb[i].frame_num; in v4l2_h264_init_reflist_builder() 74 b->refs[i].top_field_order_cnt = dpb[i].top_field_order_cnt; in v4l2_h264_init_reflist_builder() 75 b->refs[i].bottom_field_order_cnt = dpb[i].bottom_field_order_cnt; in v4l2_h264_init_reflist_builder() 86 if (dpb[i].fields & V4L2_H264_TOP_FIELD_REF) { in v4l2_h264_init_reflist_builder() 94 if (dpb[i].fields & V4L2_H264_BOTTOM_FIELD_REF) { in v4l2_h264_init_reflist_builder()
|
H A D | v4l2-ctrls-core.c | 1027 &p_h264_dec_params->dpb[i]; in std_validate_compound()
|
/linux/drivers/staging/media/sunxi/cedrus/ |
H A D | cedrus_h264.c | 104 for (i = 0; i < ARRAY_SIZE(decode->dpb); i++) { in cedrus_write_frame_list() 105 const struct v4l2_h264_dpb_entry *dpb = &decode->dpb[i]; in cedrus_write_frame_list() local 109 if (!(dpb->flags & V4L2_H264_DPB_ENTRY_FLAG_VALID)) in cedrus_write_frame_list() 112 buf = vb2_find_buffer(cap_q, dpb->reference_ts); in cedrus_write_frame_list() 120 if (run->dst->vb2_buf.timestamp == dpb->reference_ts) { in cedrus_write_frame_list() 125 if (!(dpb->flags & V4L2_H264_DPB_ENTRY_FLAG_ACTIVE)) in cedrus_write_frame_list() 129 dpb->top_field_order_cnt, in cedrus_write_frame_list() 130 dpb->bottom_field_order_cnt, in cedrus_write_frame_list() 206 const struct v4l2_h264_dpb_entry *dpb; in _cedrus_write_ref_list() local 213 dpb = &decode->dpb[dpb_idx]; in _cedrus_write_ref_list() [all …]
|
H A D | cedrus_h265.c | 149 const struct v4l2_hevc_dpb_entry *dpb, in cedrus_h265_frame_info_write_dpb() argument 157 struct vb2_buffer *buf = vb2_find_buffer(vq, dpb[i].timestamp); in cedrus_h265_frame_info_write_dpb() 159 dpb[i].pic_order_cnt_val, in cedrus_h265_frame_info_write_dpb() 160 dpb[i].pic_order_cnt_val in cedrus_h265_frame_info_write_dpb() 166 cedrus_h265_frame_info_write_single(ctx, i, dpb[i].field_pic, in cedrus_h265_frame_info_write_dpb() 173 const struct v4l2_hevc_dpb_entry *dpb, in cedrus_h265_ref_pic_list_write() argument 188 if (dpb[index].flags & V4L2_HEVC_DPB_ENTRY_LONG_TERM_REFERENCE) in cedrus_h265_ref_pic_list_write() 336 const struct v4l2_hevc_dpb_entry *dpb; in cedrus_h265_is_low_delay() local 342 dpb = run->h265.decode_params->dpb; in cedrus_h265_is_low_delay() 345 if (dpb[slice_params->ref_idx_l0[i]].pic_order_cnt_val > poc) in cedrus_h265_is_low_delay() [all …]
|
/linux/drivers/media/test-drivers/visl/ |
H A D | visl-dec.c | 146 for (i = 0; i < ARRAY_SIZE(run->h264.dpram->dpb); i++) { in visl_get_ref_frames() 148 run->h264.dpram->dpb[i].reference_ts); in visl_get_ref_frames() 151 run->h264.dpram->dpb[i].reference_ts, in visl_get_ref_frames() 155 run->h264.dpram->dpb[i].reference_ts); in visl_get_ref_frames() 169 for (i = 0; i < ARRAY_SIZE(run->hevc.dpram->dpb); i++) { in visl_get_ref_frames() 170 vb2_buf = vb2_find_buffer(cap_q, run->hevc.dpram->dpb[i].timestamp); in visl_get_ref_frames() 173 run->hevc.dpram->dpb[i].timestamp, in visl_get_ref_frames() 177 run->hevc.dpram->dpb[i].timestamp); in visl_get_ref_frames() 534 for (i = 0; i < ARRAY_SIZE(run->h264.dpram->dpb); i++) in visl_trace_ctrls() 535 trace_v4l2_h264_dpb_entry(&run->h264.dpram->dpb[i], i); in visl_trace_ctrls() [all …]
|
/linux/drivers/media/platform/nvidia/tegra-vde/ |
H A D | h264.c | 655 const struct v4l2_h264_dpb_entry *dpb = ctx->h264.decode_params->dpb; in get_ref_buf() local 659 if (dpb[dpb_idx].flags & V4L2_H264_DPB_ENTRY_FLAG_ACTIVE) in get_ref_buf() 660 vb = vb2_find_buffer(cap_q, dpb[dpb_idx].reference_ts); in get_ref_buf() 758 const struct v4l2_h264_dpb_entry *dpb = ctx->h264.decode_params->dpb; in tegra_vde_h264_setup_frames() local 797 v4l2_h264_init_reflist_builder(&b, h->decode_params, h->sps, dpb); in tegra_vde_h264_setup_frames()
|
/linux/include/media/ |
H A D | v4l2-h264.h | 52 const struct v4l2_h264_dpb_entry dpb[V4L2_H264_NUM_DPB_ENTRIES]);
|
/linux/drivers/media/platform/st/sti/delta/ |
H A D | delta-debug.c | 21 s->profile, s->level, s->dpb, in delta_streaminfo_str()
|
H A D | delta.h | 71 u32 dpb; member
|
H A D | delta-mjpeg-dec.c | 364 streaminfo->dpb = 1; in delta_mjpeg_get_streaminfo()
|
/linux/drivers/media/platform/samsung/s5p-mfc/ |
H A D | s5p_mfc_opr_v5.c | 381 unsigned int dpb; in s5p_mfc_set_dec_frame_buffer_v5() local 389 dpb = mfc_read(dev, S5P_FIMV_SI_CH0_DPB_CONF_CTRL) & in s5p_mfc_set_dec_frame_buffer_v5() 391 mfc_write(dev, ctx->total_dpb_count | dpb, in s5p_mfc_set_dec_frame_buffer_v5() 1069 unsigned int dpb; in s5p_mfc_set_flush() local 1072 dpb = mfc_read(dev, S5P_FIMV_SI_CH0_DPB_CONF_CTRL) | ( in s5p_mfc_set_flush() 1075 dpb = mfc_read(dev, S5P_FIMV_SI_CH0_DPB_CONF_CTRL) & in s5p_mfc_set_flush() 1077 mfc_write(dev, dpb, S5P_FIMV_SI_CH0_DPB_CONF_CTRL); in s5p_mfc_set_flush()
|
/linux/include/uapi/linux/ |
H A D | v4l2-controls.h | 1679 struct v4l2_h264_dpb_entry dpb[V4L2_H264_NUM_DPB_ENTRIES]; member 2504 struct v4l2_hevc_dpb_entry dpb[V4L2_HEVC_DPB_ENTRIES_NUM_MAX]; member
|
/linux/Documentation/userspace-api/media/v4l/ |
H A D | ext-ctrls-codec-stateless.rst | 489 - Index into the :c:type:`v4l2_ctrl_h264_decode_params`.dpb array. 544 - ``dpb[16]`` 2647 See :ref:`HEVC dpb field pic Flags <hevc_dpb_field_pic_flags>` 2661 ``HEVC dpb field pic Flags`` 2902 - The number of entries in ``dpb``. 2934 - ``dpb[V4L2_HEVC_DPB_ENTRIES_NUM_MAX]``
|