Lines Matching full:vpu

29  * struct vp9_dram_buf - contains buffer info for vpu
45 * @reserved : reserved field used by vpu
67 * @reserved : reserved field used by vpu
88 * struct vdec_vp9_vsi - shared buffer between host and VPU firmware
90 * VPU-W/R: VPU is write/reader on this item
91 * @sf_bs_buf : super frame backup buffer (AP-W, VPU-R)
93 * (AP-R/W, VPU-R/W)
94 * @sf_next_ref_fb_idx : next available super frame (AP-W, VPU-R)
95 * @sf_frm_cnt : super frame count, filled by vpu (AP-R, VPU-W)
96 * @sf_frm_offset : super frame offset, filled by vpu (AP-R, VPU-W)
97 * @sf_frm_sz : super frame size, filled by vpu (AP-R, VPU-W)
98 * @sf_frm_idx : current super frame (AP-R, VPU-W)
99 * @sf_init : inform super frame info already parsed by vpu (AP-R, VPU-W)
100 * @fb : capture buffer (AP-W, VPU-R)
101 * @bs : bs buffer (AP-W, VPU-R)
102 * @cur_fb : current show capture buffer (AP-R/W, VPU-R/W)
103 * @pic_w : picture width (AP-R, VPU-W)
104 * @pic_h : picture height (AP-R, VPU-W)
105 * @buf_w : codec width (AP-R, VPU-W)
106 * @buf_h : coded height (AP-R, VPU-W)
107 * @buf_sz_y_bs : ufo compressed y plane size (AP-R, VPU-W)
108 * @buf_sz_c_bs : ufo compressed cbcr plane size (AP-R, VPU-W)
109 * @buf_len_sz_y : size used to store y plane ufo info (AP-R, VPU-W)
110 * @buf_len_sz_c : size used to store cbcr plane ufo info (AP-R, VPU-W)
112 * @profile : profile sparsed from vpu (AP-R, VPU-W)
113 * @show_frame : [BIT(0)] display this frame or not (AP-R, VPU-W)
114 * [BIT(1)] reset segment data or not (AP-R, VPU-W)
115 * [BIT(2)] trig decoder hardware or not (AP-R, VPU-W)
116 * [BIT(3)] ask VPU to set bits(0~4) accordingly (AP-W, VPU-R)
117 * [BIT(4)] do not reset segment data before every frame (AP-R, VPU-W)
119 * (AP-R, VPU-W)
120 * @frm_to_show_idx : index to show frame (AP-R, VPU-W)
123 * (AP-R, VPU-W)
124 * @resolution_changed : resolution change in this frame (AP-R, VPU-W)
126 * @frm_bufs : maintain reference buffer info (AP-R/W, VPU-R/W)
127 * @ref_frm_map : maintain reference buffer map info (AP-R/W, VPU-R/W)
128 * @new_fb_idx : index to frm_bufs array (AP-R, VPU-W)
129 * @frm_num : decoded frame number, include sub-frame count (AP-R, VPU-W)
130 * @mv_buf : motion vector working buffer (AP-W, VPU-R)
131 * @frm_refs : maintain three reference buffer info (AP-R/W, VPU-R/W)
132 * @seg_id_buf : segmentation map working buffer (AP-W, VPU-R)
183 * @vpu : vpu instance information
184 * @vsi : shared buffer between host and VPU firmware
200 struct vdec_vpu_inst vpu; member
590 if (vpu_dec_end(&inst->vpu)) { in vp9_decode_end_proc()
667 if (vpu_dec_reset(&inst->vpu)) in vp9_reset()
670 /* Set the va again, since vpu_dec_reset will clear mv_buf in vpu */ in vp9_reset()
675 /* Set the va again, since vpu_dec_reset will clear seg_id_buf in vpu */ in vp9_reset()
770 ret = vpu_dec_deinit(&inst->vpu); in vdec_vp9_deinit()
797 inst->vpu.id = IPI_VDEC_VP9; in vdec_vp9_init()
798 inst->vpu.ctx = ctx; in vdec_vp9_init()
800 if (vpu_dec_init(&inst->vpu)) { in vdec_vp9_init()
805 inst->vsi = (struct vdec_vp9_vsi *)inst->vpu.vsi; in vdec_vp9_init()
883 ret = vpu_dec_start(&inst->vpu, data, 3); in vdec_vp9_decode()
893 if (vpu_dec_start(&inst->vpu, NULL, 0)) { in vdec_vp9_decode()
894 mtk_vcodec_err(inst, "vpu trig decoder failed"); in vdec_vp9_decode()
902 mtk_vcodec_err(inst, "Invalid values from VPU."); in vdec_vp9_decode()
945 /* VPU assign the buffer pointer in its address space, in vdec_vp9_decode()