/kernel/linux/linux-5.10/drivers/media/platform/mtk-vcodec/venc/ |
H A D | venc_h264_if.c | 158 static inline u32 h264_read_reg(struct venc_h264_inst *inst, u32 addr) in h264_read_reg() argument 160 return readl(inst->hw_base + addr); in h264_read_reg() 163 static unsigned int h264_get_profile(struct venc_h264_inst *inst, in h264_get_profile() argument 174 mtk_vcodec_err(inst, "unsupported CONSTRAINED_BASELINE"); in h264_get_profile() 177 mtk_vcodec_err(inst, "unsupported EXTENDED"); in h264_get_profile() 180 mtk_vcodec_debug(inst, "unsupported profile %d", profile); in h264_get_profile() 185 static unsigned int h264_get_level(struct venc_h264_inst *inst, in h264_get_level() argument 190 mtk_vcodec_err(inst, "unsupported 1B"); in h264_get_level() 219 mtk_vcodec_debug(inst, "unsupported level %d", level); in h264_get_level() 224 static void h264_enc_free_work_buf(struct venc_h264_inst *inst) in h264_enc_free_work_buf() argument 243 h264_enc_alloc_work_buf(struct venc_h264_inst *inst) h264_enc_alloc_work_buf() argument 328 h264_enc_wait_venc_done(struct venc_h264_inst *inst) h264_enc_wait_venc_done() argument 341 h264_frame_type(struct venc_h264_inst *inst) h264_frame_type() argument 357 h264_encode_sps(struct venc_h264_inst *inst, struct mtk_vcodec_mem *bs_buf, unsigned int *bs_size) h264_encode_sps() argument 384 h264_encode_pps(struct venc_h264_inst *inst, struct mtk_vcodec_mem *bs_buf, unsigned int *bs_size) h264_encode_pps() argument 411 h264_encode_header(struct venc_h264_inst *inst, struct mtk_vcodec_mem *bs_buf, unsigned int *bs_size) h264_encode_header() argument 433 h264_encode_frame(struct venc_h264_inst *inst, struct venc_frm_buf *frm_buf, struct mtk_vcodec_mem *bs_buf, unsigned int *bs_size) h264_encode_frame() argument 484 h264_encode_filler(struct venc_h264_inst *inst, void *buf, int size) h264_encode_filler() argument 504 struct venc_h264_inst *inst; h264_enc_init() local 538 struct venc_h264_inst *inst = (struct venc_h264_inst *)handle; h264_enc_encode() local 631 struct venc_h264_inst *inst = (struct venc_h264_inst *)handle; h264_enc_set_param() local 687 struct venc_h264_inst *inst = (struct venc_h264_inst *)handle; h264_enc_deinit() local [all...] |
H A D | venc_vp8_if.c | 135 static inline u32 vp8_enc_read_reg(struct venc_vp8_inst *inst, u32 addr) in vp8_enc_read_reg() argument 137 return readl(inst->hw_base + addr); in vp8_enc_read_reg() 140 static void vp8_enc_free_work_buf(struct venc_vp8_inst *inst) in vp8_enc_free_work_buf() argument 144 mtk_vcodec_debug_enter(inst); in vp8_enc_free_work_buf() 148 if (inst->work_bufs[i].size == 0) in vp8_enc_free_work_buf() 150 mtk_vcodec_mem_free(inst->ctx, &inst->work_bufs[i]); in vp8_enc_free_work_buf() 153 mtk_vcodec_debug_leave(inst); in vp8_enc_free_work_buf() 156 static int vp8_enc_alloc_work_buf(struct venc_vp8_inst *inst) in vp8_enc_alloc_work_buf() argument 160 struct venc_vp8_vpu_buf *wb = inst in vp8_enc_alloc_work_buf() 219 vp8_enc_wait_venc_done(struct venc_vp8_inst *inst) vp8_enc_wait_venc_done() argument 236 vp8_enc_compose_one_frame(struct venc_vp8_inst *inst, struct mtk_vcodec_mem *bs_buf, unsigned int *bs_size) vp8_enc_compose_one_frame() argument 295 vp8_enc_encode_frame(struct venc_vp8_inst *inst, struct venc_frm_buf *frm_buf, struct mtk_vcodec_mem *bs_buf, unsigned int *bs_size) vp8_enc_encode_frame() argument 331 struct venc_vp8_inst *inst; vp8_enc_init() local 365 struct venc_vp8_inst *inst = (struct venc_vp8_inst *)handle; vp8_enc_encode() local 400 struct venc_vp8_inst *inst = (struct venc_vp8_inst *)handle; vp8_enc_set_param() local 449 struct venc_vp8_inst *inst = (struct venc_vp8_inst *)handle; vp8_enc_deinit() local [all...] |
/kernel/linux/linux-6.6/drivers/media/platform/qcom/venus/ |
H A D | vdec.c | 117 find_format(struct venus_inst *inst, u32 pixfmt, u32 type) in find_format() argument 132 !venus_helper_check_codec(inst, fmt[i].pixfmt)) in find_format() 136 !venus_helper_check_format(inst, fmt[i].pixfmt)) in find_format() 140 !(inst->bit_depth == VIDC_BITDEPTH_10)) in find_format() 147 find_format_by_index(struct venus_inst *inst, unsigned int index, u32 type) in find_format_by_index() argument 163 valid = venus_helper_check_codec(inst, fmt[i].pixfmt); in find_format_by_index() 165 valid = venus_helper_check_format(inst, fmt[i].pixfmt); in find_format_by_index() 168 !(inst->bit_depth == VIDC_BITDEPTH_10)) in find_format_by_index() 185 vdec_try_fmt_common(struct venus_inst *inst, struct v4l2_format *f) in vdec_try_fmt_common() argument 195 fmt = find_format(inst, pixm in vdec_try_fmt_common() 243 struct venus_inst *inst = to_inst(file); vdec_try_fmt() local 250 vdec_check_src_change(struct venus_inst *inst) vdec_check_src_change() argument 286 struct venus_inst *inst = to_inst(file); vdec_g_fmt() local 323 struct venus_inst *inst = to_inst(file); vdec_s_fmt() local 397 struct venus_inst *inst = to_inst(file); vdec_g_selection() local 447 struct venus_inst *inst = to_inst(file); vdec_enum_fmt() local 464 struct venus_inst *inst = to_inst(file); vdec_s_parm() local 499 struct venus_inst *inst = to_inst(file); vdec_enum_framesizes() local 529 struct venus_inst *inst = container_of(fh, struct venus_inst, fh); vdec_subscribe_event() local 551 struct venus_inst *inst = to_inst(file); vdec_decoder_cmd() local 625 vdec_pm_get(struct venus_inst *inst) vdec_pm_get() argument 638 vdec_pm_put(struct venus_inst *inst, bool autosuspend) vdec_pm_put() argument 656 vdec_pm_get_put(struct venus_inst *inst) vdec_pm_get_put() argument 678 vdec_pm_touch(struct venus_inst *inst) vdec_pm_touch() argument 683 vdec_set_properties(struct venus_inst *inst) vdec_set_properties() argument 725 vdec_set_work_route(struct venus_inst *inst) vdec_set_work_route() argument 743 vdec_output_conf(struct venus_inst *inst) vdec_output_conf() argument 868 vdec_session_init(struct venus_inst *inst) vdec_session_init() argument 889 vdec_num_buffers(struct venus_inst *inst, unsigned int *in_num, unsigned int *out_num) vdec_num_buffers() argument 917 struct venus_inst *inst = vb2_get_drv_priv(q); vdec_queue_setup() local 1008 vdec_verify_conf(struct venus_inst *inst) vdec_verify_conf() argument 1035 vdec_start_capture(struct venus_inst *inst) vdec_start_capture() argument 1107 vdec_start_output(struct venus_inst *inst) vdec_start_output() argument 1172 struct venus_inst *inst = vb2_get_drv_priv(q); vdec_start_streaming() local 1209 vdec_cancel_dst_buffers(struct venus_inst *inst) vdec_cancel_dst_buffers() argument 1217 vdec_stop_capture(struct venus_inst *inst) vdec_stop_capture() argument 1244 vdec_stop_output(struct venus_inst *inst) vdec_stop_output() argument 1269 struct venus_inst *inst = vb2_get_drv_priv(q); vdec_stop_streaming() local 1297 vdec_session_release(struct venus_inst *inst) vdec_session_release() argument 1335 struct venus_inst *inst = vb2_get_drv_priv(vb->vb2_queue); vdec_buf_init() local 1344 struct venus_inst *inst = vb2_get_drv_priv(vb->vb2_queue); vdec_buf_cleanup() local 1361 struct venus_inst *inst = vb2_get_drv_priv(vb->vb2_queue); vdec_vb2_buf_queue() local 1396 vdec_buf_done(struct venus_inst *inst, unsigned int buf_type, u32 tag, u32 bytesused, u32 data_offset, u32 flags, u32 hfi_flags, u64 timestamp_us) vdec_buf_done() argument 1462 vdec_event_change(struct venus_inst *inst, struct hfi_event_data *ev_data, bool sufficient) vdec_event_change() argument 1556 vdec_event_notify(struct venus_inst *inst, u32 event, struct hfi_event_data *data) vdec_event_notify() argument 1590 vdec_flush_done(struct venus_inst *inst) vdec_flush_done() argument 1601 vdec_inst_init(struct venus_inst *inst) vdec_inst_init() argument 1633 struct venus_inst *inst = priv; m2m_queue_init() local 1668 struct venus_inst *inst; vdec_open() local 1746 struct venus_inst *inst = to_inst(file); vdec_close() local [all...] |
H A D | hfi.c | 164 static int wait_session_msg(struct venus_inst *inst) in wait_session_msg() argument 168 ret = wait_for_completion_timeout(&inst->done, TIMEOUT); in wait_session_msg() 172 if (inst->error != HFI_ERR_NONE) in wait_session_msg() 178 int hfi_session_create(struct venus_inst *inst, const struct hfi_inst_ops *ops) in hfi_session_create() argument 180 struct venus_core *core = inst->core; in hfi_session_create() 187 inst->state = INST_UNINIT; in hfi_session_create() 188 init_completion(&inst->done); in hfi_session_create() 189 inst->ops = ops; in hfi_session_create() 193 if (test_bit(0, &inst->core->sys_error)) { in hfi_session_create() 203 list_add_tail(&inst in hfi_session_create() 214 hfi_session_init(struct venus_inst *inst, u32 pixfmt) hfi_session_init() argument 252 hfi_session_destroy(struct venus_inst *inst) hfi_session_destroy() argument 264 hfi_session_deinit(struct venus_inst *inst) hfi_session_deinit() argument 295 hfi_session_start(struct venus_inst *inst) hfi_session_start() argument 322 hfi_session_stop(struct venus_inst *inst) hfi_session_stop() argument 349 hfi_session_continue(struct venus_inst *inst) hfi_session_continue() argument 363 hfi_session_abort(struct venus_inst *inst) hfi_session_abort() argument 385 hfi_session_load_res(struct venus_inst *inst) hfi_session_load_res() argument 411 hfi_session_unload_res(struct venus_inst *inst) hfi_session_unload_res() argument 438 hfi_session_flush(struct venus_inst *inst, u32 type, bool block) hfi_session_flush() argument 462 hfi_session_set_buffers(struct venus_inst *inst, struct hfi_buffer_desc *bd) hfi_session_set_buffers() argument 472 hfi_session_unset_buffers(struct venus_inst *inst, struct hfi_buffer_desc *bd) hfi_session_unset_buffers() argument 497 hfi_session_get_property(struct venus_inst *inst, u32 ptype, union hfi_get_property *hprop) hfi_session_get_property() argument 525 hfi_session_set_property(struct venus_inst *inst, u32 ptype, void *pdata) hfi_session_set_property() argument 539 hfi_session_process_buf(struct venus_inst *inst, struct hfi_frame_data *fd) hfi_session_process_buf() argument [all...] |
/kernel/linux/linux-6.6/drivers/media/platform/mediatek/vcodec/decoder/vdec/ |
H A D | vdec_h264_req_multi_if.c | 173 static int vdec_h264_slice_fill_decode_parameters(struct vdec_h264_slice_inst *inst, in vdec_h264_slice_fill_decode_parameters() argument 176 struct vdec_h264_slice_lat_dec_param *slice_param = &inst->vsi->h264_slice_params; in vdec_h264_slice_fill_decode_parameters() 183 mtk_vdec_h264_get_ctrl_ptr(inst->ctx, V4L2_CID_STATELESS_H264_DECODE_PARAMS); in vdec_h264_slice_fill_decode_parameters() 188 mtk_vdec_h264_get_ctrl_ptr(inst->ctx, V4L2_CID_STATELESS_H264_SCALING_MATRIX); in vdec_h264_slice_fill_decode_parameters() 192 sps = mtk_vdec_h264_get_ctrl_ptr(inst->ctx, V4L2_CID_STATELESS_H264_SPS); in vdec_h264_slice_fill_decode_parameters() 196 pps = mtk_vdec_h264_get_ctrl_ptr(inst->ctx, V4L2_CID_STATELESS_H264_PPS); in vdec_h264_slice_fill_decode_parameters() 201 mtk_vdec_err(inst->ctx, "No support for H.264 field decoding."); in vdec_h264_slice_fill_decode_parameters() 202 inst->is_field_bitstream = true; in vdec_h264_slice_fill_decode_parameters() 216 static int get_vdec_sig_decode_parameters(struct vdec_h264_slice_inst *inst) in get_vdec_sig_decode_parameters() argument 222 struct vdec_h264_slice_lat_dec_param *slice_param = &inst in get_vdec_sig_decode_parameters() 275 vdec_h264_slice_fill_decode_reflist(struct vdec_h264_slice_inst *inst, struct vdec_h264_slice_lat_dec_param *slice_param, struct vdec_h264_slice_share_info *share_info) vdec_h264_slice_fill_decode_reflist() argument 309 vdec_h264_slice_alloc_mv_buf(struct vdec_h264_slice_inst *inst, struct vdec_pic_info *pic) vdec_h264_slice_alloc_mv_buf() argument 332 vdec_h264_slice_free_mv_buf(struct vdec_h264_slice_inst *inst) vdec_h264_slice_free_mv_buf() argument 344 vdec_h264_slice_get_pic_info(struct vdec_h264_slice_inst *inst) vdec_h264_slice_get_pic_info() argument 383 vdec_h264_slice_get_crop_info(struct vdec_h264_slice_inst *inst, struct v4l2_rect *cr) vdec_h264_slice_get_crop_info() argument 397 struct vdec_h264_slice_inst *inst; vdec_h264_slice_init() local 444 struct vdec_h264_slice_inst *inst = h_vdec; vdec_h264_slice_deinit() local 460 struct vdec_h264_slice_inst *inst = ctx->drv_handle; vdec_h264_slice_core_decode() local 568 struct vdec_h264_slice_inst *inst = h_vdec; vdec_h264_slice_lat_decode() local 712 struct vdec_h264_slice_inst *inst = h_vdec; vdec_h264_slice_single_decode() local 807 struct vdec_h264_slice_inst *inst = h_vdec; vdec_h264_slice_decode() local 824 struct vdec_h264_slice_inst *inst = h_vdec; vdec_h264_slice_get_param() local [all...] |
H A D | vdec_vp9_if.c | 206 static bool vp9_is_sf_ref_fb(struct vdec_vp9_inst *inst, struct vdec_fb *fb) in vp9_is_sf_ref_fb() argument 209 struct vdec_vp9_vsi *vsi = inst->vsi; in vp9_is_sf_ref_fb() 219 *inst, void *addr) in vp9_rm_from_fb_use_list() 224 list_for_each_entry(node, &inst->fb_use_list, list) { in vp9_rm_from_fb_use_list() 228 &inst->available_fb_node_list); in vp9_rm_from_fb_use_list() 236 static void vp9_add_to_fb_free_list(struct vdec_vp9_inst *inst, in vp9_add_to_fb_free_list() argument 242 node = list_first_entry_or_null(&inst->available_fb_node_list, in vp9_add_to_fb_free_list() 247 list_move_tail(&node->list, &inst->fb_free_list); in vp9_add_to_fb_free_list() 250 mtk_vdec_debug(inst->ctx, "No free fb node"); in vp9_add_to_fb_free_list() 262 static void vp9_ref_cnt_fb(struct vdec_vp9_inst *inst, in argument 218 vp9_rm_from_fb_use_list(struct vdec_vp9_inst *inst, void *addr) vp9_rm_from_fb_use_list() argument 289 vp9_free_all_sf_ref_fb(struct vdec_vp9_inst *inst) vp9_free_all_sf_ref_fb() argument 310 vp9_get_sf_ref_fb(struct vdec_vp9_inst *inst) vp9_get_sf_ref_fb() argument 360 vp9_alloc_work_buf(struct vdec_vp9_inst *inst) vp9_alloc_work_buf() argument 430 vp9_add_to_fb_disp_list(struct vdec_vp9_inst *inst, struct vdec_fb *fb) vp9_add_to_fb_disp_list() argument 454 vp9_swap_frm_bufs(struct vdec_vp9_inst *inst) vp9_swap_frm_bufs() argument 533 vp9_wait_dec_end(struct vdec_vp9_inst *inst) vp9_wait_dec_end() argument 551 struct vdec_vp9_inst *inst; vp9_alloc_inst() local 565 vp9_free_inst(struct vdec_vp9_inst *inst) vp9_free_inst() argument 574 vp9_decode_end_proc(struct vdec_vp9_inst *inst) vp9_decode_end_proc() argument 602 vp9_is_last_sub_frm(struct vdec_vp9_inst *inst) vp9_is_last_sub_frm() argument 612 vp9_rm_from_fb_disp_list(struct vdec_vp9_inst *inst) vp9_rm_from_fb_disp_list() argument 630 vp9_add_to_fb_use_list(struct vdec_vp9_inst *inst, struct vdec_fb *fb) vp9_add_to_fb_use_list() argument 652 vp9_reset(struct vdec_vp9_inst *inst) vp9_reset() argument 677 init_all_fb_lists(struct vdec_vp9_inst *inst) init_all_fb_lists() argument 694 get_pic_info(struct vdec_vp9_inst *inst, struct vdec_pic_info *pic) get_pic_info() argument 709 get_disp_fb(struct vdec_vp9_inst *inst, struct vdec_fb **out_fb) get_disp_fb() argument 717 get_free_fb(struct vdec_vp9_inst *inst, struct vdec_fb **out_fb) get_free_fb() argument 736 validate_vsi_array_indexes(struct vdec_vp9_inst *inst, struct vdec_vp9_vsi *vsi) validate_vsi_array_indexes() argument 755 struct vdec_vp9_inst *inst = (struct vdec_vp9_inst *)h_vdec; vdec_vp9_deinit() local 777 struct vdec_vp9_inst *inst; vdec_vp9_init() local 813 struct vdec_vp9_inst *inst = (struct vdec_vp9_inst *)h_vdec; vdec_vp9_decode() local 971 get_crop_info(struct vdec_vp9_inst *inst, struct v4l2_rect *cr) get_crop_info() argument 984 struct vdec_vp9_inst *inst = (struct vdec_vp9_inst *)h_vdec; vdec_vp9_get_param() local [all...] |
H A D | vdec_vp8_req_if.c | 118 static void vdec_vp8_slice_get_pic_info(struct vdec_vp8_slice_inst *inst) in vdec_vp8_slice_get_pic_info() argument 120 struct mtk_vcodec_dec_ctx *ctx = inst->ctx; in vdec_vp8_slice_get_pic_info() 126 vpu_dec_get_param(&inst->vpu, data, 3, GET_PARAM_PIC_INFO); in vdec_vp8_slice_get_pic_info() 130 ctx->picinfo.fb_sz[0] = inst->vpu.fb_sz[0]; in vdec_vp8_slice_get_pic_info() 131 ctx->picinfo.fb_sz[1] = inst->vpu.fb_sz[1]; in vdec_vp8_slice_get_pic_info() 133 inst->vsi->pic.pic_w = ctx->picinfo.pic_w; in vdec_vp8_slice_get_pic_info() 134 inst->vsi->pic.pic_h = ctx->picinfo.pic_h; in vdec_vp8_slice_get_pic_info() 135 inst->vsi->pic.buf_w = ctx->picinfo.buf_w; in vdec_vp8_slice_get_pic_info() 136 inst->vsi->pic.buf_h = ctx->picinfo.buf_h; in vdec_vp8_slice_get_pic_info() 137 inst in vdec_vp8_slice_get_pic_info() 146 vdec_vp8_slice_alloc_working_buf(struct vdec_vp8_slice_inst *inst) vdec_vp8_slice_alloc_working_buf() argument 190 vdec_vp8_slice_free_working_buf(struct vdec_vp8_slice_inst *inst) vdec_vp8_slice_free_working_buf() argument 232 vdec_vp8_slice_get_decode_parameters(struct vdec_vp8_slice_inst *inst) vdec_vp8_slice_get_decode_parameters() argument 276 struct vdec_vp8_slice_inst *inst; vdec_vp8_slice_init() local 321 struct vdec_vp8_slice_inst *inst = h_vdec; vdec_vp8_slice_decode() local 399 struct vdec_vp8_slice_inst *inst = h_vdec; vdec_vp8_slice_get_param() local 421 struct vdec_vp8_slice_inst *inst = h_vdec; vdec_vp8_slice_deinit() local [all...] |
H A D | vdec_h264_req_if.c | 96 static int get_vdec_decode_parameters(struct vdec_h264_slice_inst *inst) in get_vdec_decode_parameters() argument 102 struct mtk_h264_dec_slice_param *slice_param = &inst->h264_slice_param; in get_vdec_decode_parameters() 112 mtk_vdec_h264_get_ctrl_ptr(inst->ctx, V4L2_CID_STATELESS_H264_DECODE_PARAMS); in get_vdec_decode_parameters() 116 sps = mtk_vdec_h264_get_ctrl_ptr(inst->ctx, V4L2_CID_STATELESS_H264_SPS); in get_vdec_decode_parameters() 120 pps = mtk_vdec_h264_get_ctrl_ptr(inst->ctx, V4L2_CID_STATELESS_H264_PPS); in get_vdec_decode_parameters() 125 mtk_vdec_h264_get_ctrl_ptr(inst->ctx, V4L2_CID_STATELESS_H264_SCALING_MATRIX); in get_vdec_decode_parameters() 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() 136 mtk_vdec_h264_fill_dpb_info(inst->ctx, &slice_param->decode_params, in get_vdec_decode_parameters() 141 inst in get_vdec_decode_parameters() 157 allocate_predication_buf(struct vdec_h264_slice_inst *inst) allocate_predication_buf() argument 172 free_predication_buf(struct vdec_h264_slice_inst *inst) free_predication_buf() argument 181 alloc_mv_buf(struct vdec_h264_slice_inst *inst, struct vdec_pic_info *pic) alloc_mv_buf() argument 206 free_mv_buf(struct vdec_h264_slice_inst *inst) free_mv_buf() argument 219 get_pic_info(struct vdec_h264_slice_inst *inst, struct vdec_pic_info *pic) get_pic_info() argument 254 get_crop_info(struct vdec_h264_slice_inst *inst, struct v4l2_rect *cr) get_crop_info() argument 265 get_dpb_size(struct vdec_h264_slice_inst *inst, unsigned int *dpb_sz) get_dpb_size() argument 273 struct vdec_h264_slice_inst *inst; vdec_h264_slice_init() local 320 struct vdec_h264_slice_inst *inst = h_vdec; vdec_h264_slice_deinit() local 332 struct vdec_h264_slice_inst *inst = h_vdec; vdec_h264_slice_decode() local 416 struct vdec_h264_slice_inst *inst = h_vdec; vdec_h264_slice_get_param() local [all...] |
H A D | vdec_vp8_if.c | 165 static void get_hw_reg_base(struct vdec_vp8_inst *inst) in get_hw_reg_base() argument 167 void __iomem **reg_base = inst->ctx->dev->reg_base; in get_hw_reg_base() 169 inst->reg_base.top = mtk_vcodec_get_reg_addr(reg_base, VDEC_TOP); in get_hw_reg_base() 170 inst->reg_base.cm = mtk_vcodec_get_reg_addr(reg_base, VDEC_CM); in get_hw_reg_base() 171 inst->reg_base.hwd = mtk_vcodec_get_reg_addr(reg_base, VDEC_HWD); in get_hw_reg_base() 172 inst->reg_base.misc = mtk_vcodec_get_reg_addr(reg_base, VDEC_MISC); in get_hw_reg_base() 173 inst->reg_base.ld = mtk_vcodec_get_reg_addr(reg_base, VDEC_LD); in get_hw_reg_base() 174 inst->reg_base.hwb = mtk_vcodec_get_reg_addr(reg_base, VDEC_HWB); in get_hw_reg_base() 177 static void write_hw_segmentation_data(struct vdec_vp8_inst *inst) in write_hw_segmentation_data() argument 182 void __iomem *cm = inst in write_hw_segmentation_data() 198 read_hw_segmentation_data(struct vdec_vp8_inst *inst) read_hw_segmentation_data() argument 220 enable_hw_rw_function(struct vdec_vp8_inst *inst) enable_hw_rw_function() argument 246 store_dec_table(struct vdec_vp8_inst *inst) store_dec_table() argument 263 load_dec_table(struct vdec_vp8_inst *inst) load_dec_table() argument 280 get_pic_info(struct vdec_vp8_inst *inst, struct vdec_pic_info *pic) get_pic_info() argument 290 vp8_dec_finish(struct vdec_vp8_inst *inst) vp8_dec_finish() argument 325 move_fb_list_use_to_free(struct vdec_vp8_inst *inst) move_fb_list_use_to_free() argument 333 init_list(struct vdec_vp8_inst *inst) init_list() argument 350 add_fb_to_free_list(struct vdec_vp8_inst *inst, void *fb) add_fb_to_free_list() argument 362 alloc_working_buf(struct vdec_vp8_inst *inst) alloc_working_buf() argument 378 free_working_buf(struct vdec_vp8_inst *inst) free_working_buf() argument 390 struct vdec_vp8_inst *inst; vdec_vp8_init() local 430 struct vdec_vp8_inst *inst = (struct vdec_vp8_inst *)h_vdec; vdec_vp8_decode() local 510 get_disp_fb(struct vdec_vp8_inst *inst, struct vdec_fb **out_fb) get_disp_fb() argument 530 get_free_fb(struct vdec_vp8_inst *inst, struct vdec_fb **out_fb) get_free_fb() argument 550 get_crop_info(struct vdec_vp8_inst *inst, struct v4l2_rect *cr) get_crop_info() argument 563 struct vdec_vp8_inst *inst = (struct vdec_vp8_inst *)h_vdec; vdec_vp8_get_param() local 596 struct vdec_vp8_inst *inst = (struct vdec_vp8_inst *)h_vdec; vdec_vp8_deinit() local [all...] |
/kernel/linux/linux-5.10/drivers/media/platform/mtk-vcodec/vdec/ |
H A D | vdec_vp9_if.c | 206 static bool vp9_is_sf_ref_fb(struct vdec_vp9_inst *inst, struct vdec_fb *fb) in vp9_is_sf_ref_fb() argument 209 struct vdec_vp9_vsi *vsi = inst->vsi; in vp9_is_sf_ref_fb() 219 *inst, void *addr) in vp9_rm_from_fb_use_list() 224 list_for_each_entry(node, &inst->fb_use_list, list) { in vp9_rm_from_fb_use_list() 228 &inst->available_fb_node_list); in vp9_rm_from_fb_use_list() 236 static void vp9_add_to_fb_free_list(struct vdec_vp9_inst *inst, in vp9_add_to_fb_free_list() argument 242 node = list_first_entry_or_null(&inst->available_fb_node_list, in vp9_add_to_fb_free_list() 247 list_move_tail(&node->list, &inst->fb_free_list); in vp9_add_to_fb_free_list() 250 mtk_vcodec_debug(inst, "No free fb node"); in vp9_add_to_fb_free_list() 262 static void vp9_ref_cnt_fb(struct vdec_vp9_inst *inst, in argument 218 vp9_rm_from_fb_use_list(struct vdec_vp9_inst *inst, void *addr) vp9_rm_from_fb_use_list() argument 289 vp9_free_all_sf_ref_fb(struct vdec_vp9_inst *inst) vp9_free_all_sf_ref_fb() argument 310 vp9_get_sf_ref_fb(struct vdec_vp9_inst *inst) vp9_get_sf_ref_fb() argument 360 vp9_alloc_work_buf(struct vdec_vp9_inst *inst) vp9_alloc_work_buf() argument 434 vp9_add_to_fb_disp_list(struct vdec_vp9_inst *inst, struct vdec_fb *fb) vp9_add_to_fb_disp_list() argument 458 vp9_swap_frm_bufs(struct vdec_vp9_inst *inst) vp9_swap_frm_bufs() argument 537 vp9_wait_dec_end(struct vdec_vp9_inst *inst) vp9_wait_dec_end() argument 555 struct vdec_vp9_inst *inst; vp9_alloc_inst() local 569 vp9_free_inst(struct vdec_vp9_inst *inst) vp9_free_inst() argument 578 vp9_decode_end_proc(struct vdec_vp9_inst *inst) vp9_decode_end_proc() argument 607 vp9_is_last_sub_frm(struct vdec_vp9_inst *inst) vp9_is_last_sub_frm() argument 617 vp9_rm_from_fb_disp_list(struct vdec_vp9_inst *inst) vp9_rm_from_fb_disp_list() argument 636 vp9_add_to_fb_use_list(struct vdec_vp9_inst *inst, struct vdec_fb *fb) vp9_add_to_fb_use_list() argument 658 vp9_reset(struct vdec_vp9_inst *inst) vp9_reset() argument 683 init_all_fb_lists(struct vdec_vp9_inst *inst) init_all_fb_lists() argument 700 get_pic_info(struct vdec_vp9_inst *inst, struct vdec_pic_info *pic) get_pic_info() argument 717 get_disp_fb(struct vdec_vp9_inst *inst, struct vdec_fb **out_fb) get_disp_fb() argument 725 get_free_fb(struct vdec_vp9_inst *inst, struct vdec_fb **out_fb) get_free_fb() argument 745 validate_vsi_array_indexes(struct vdec_vp9_inst *inst, struct vdec_vp9_vsi *vsi) validate_vsi_array_indexes() argument 767 struct vdec_vp9_inst *inst = (struct vdec_vp9_inst *)h_vdec; vdec_vp9_deinit() local 789 struct vdec_vp9_inst *inst; vdec_vp9_init() local 825 struct vdec_vp9_inst *inst = (struct vdec_vp9_inst *)h_vdec; vdec_vp9_decode() local 983 get_crop_info(struct vdec_vp9_inst *inst, struct v4l2_rect *cr) get_crop_info() argument 996 struct vdec_vp9_inst *inst = (struct vdec_vp9_inst *)h_vdec; vdec_vp9_get_param() local [all...] |
H A D | vdec_vp8_if.c | 168 static void get_hw_reg_base(struct vdec_vp8_inst *inst) in get_hw_reg_base() argument 170 inst->reg_base.top = mtk_vcodec_get_reg_addr(inst->ctx, VDEC_TOP); in get_hw_reg_base() 171 inst->reg_base.cm = mtk_vcodec_get_reg_addr(inst->ctx, VDEC_CM); in get_hw_reg_base() 172 inst->reg_base.hwd = mtk_vcodec_get_reg_addr(inst->ctx, VDEC_HWD); in get_hw_reg_base() 173 inst->reg_base.sys = mtk_vcodec_get_reg_addr(inst->ctx, VDEC_SYS); in get_hw_reg_base() 174 inst in get_hw_reg_base() 179 write_hw_segmentation_data(struct vdec_vp8_inst *inst) write_hw_segmentation_data() argument 200 read_hw_segmentation_data(struct vdec_vp8_inst *inst) read_hw_segmentation_data() argument 222 enable_hw_rw_function(struct vdec_vp8_inst *inst) enable_hw_rw_function() argument 249 store_dec_table(struct vdec_vp8_inst *inst) store_dec_table() argument 266 load_dec_table(struct vdec_vp8_inst *inst) load_dec_table() argument 283 get_pic_info(struct vdec_vp8_inst *inst, struct vdec_pic_info *pic) get_pic_info() argument 293 vp8_dec_finish(struct vdec_vp8_inst *inst) vp8_dec_finish() argument 328 move_fb_list_use_to_free(struct vdec_vp8_inst *inst) move_fb_list_use_to_free() argument 336 init_list(struct vdec_vp8_inst *inst) init_list() argument 353 add_fb_to_free_list(struct vdec_vp8_inst *inst, void *fb) add_fb_to_free_list() argument 365 alloc_working_buf(struct vdec_vp8_inst *inst) alloc_working_buf() argument 381 free_working_buf(struct vdec_vp8_inst *inst) free_working_buf() argument 393 struct vdec_vp8_inst *inst; vdec_vp8_init() local 433 struct vdec_vp8_inst *inst = (struct vdec_vp8_inst *)h_vdec; vdec_vp8_decode() local 514 get_disp_fb(struct vdec_vp8_inst *inst, struct vdec_fb **out_fb) get_disp_fb() argument 535 get_free_fb(struct vdec_vp8_inst *inst, struct vdec_fb **out_fb) get_free_fb() argument 556 get_crop_info(struct vdec_vp8_inst *inst, struct v4l2_rect *cr) get_crop_info() argument 569 struct vdec_vp8_inst *inst = (struct vdec_vp8_inst *)h_vdec; vdec_vp8_get_param() local 602 struct vdec_vp8_inst *inst = (struct vdec_vp8_inst *)h_vdec; vdec_vp8_deinit() local [all...] |
H A D | vdec_h264_if.c | 140 static int allocate_predication_buf(struct vdec_h264_inst *inst) in allocate_predication_buf() argument 144 inst->pred_buf.size = BUF_PREDICTION_SZ; in allocate_predication_buf() 145 err = mtk_vcodec_mem_alloc(inst->ctx, &inst->pred_buf); in allocate_predication_buf() 147 mtk_vcodec_err(inst, "failed to allocate ppl buf"); in allocate_predication_buf() 151 inst->vsi->pred_buf_dma = inst->pred_buf.dma_addr; in allocate_predication_buf() 155 static void free_predication_buf(struct vdec_h264_inst *inst) in free_predication_buf() argument 159 mtk_vcodec_debug_enter(inst); in free_predication_buf() 161 inst in free_predication_buf() 167 alloc_mv_buf(struct vdec_h264_inst *inst, struct vdec_pic_info *pic) alloc_mv_buf() argument 190 free_mv_buf(struct vdec_h264_inst *inst) free_mv_buf() argument 203 check_list_validity(struct vdec_h264_inst *inst, bool disp_list) check_list_validity() argument 221 put_fb_to_free(struct vdec_h264_inst *inst, struct vdec_fb *fb) put_fb_to_free() argument 245 get_pic_info(struct vdec_h264_inst *inst, struct vdec_pic_info *pic) get_pic_info() argument 255 get_crop_info(struct vdec_h264_inst *inst, struct v4l2_rect *cr) get_crop_info() argument 266 get_dpb_size(struct vdec_h264_inst *inst, unsigned int *dpb_sz) get_dpb_size() argument 274 struct vdec_h264_inst *inst = NULL; vdec_h264_init() local 312 struct vdec_h264_inst *inst = (struct vdec_h264_inst *)h_vdec; vdec_h264_deinit() local 338 struct vdec_h264_inst *inst = (struct vdec_h264_inst *)h_vdec; vdec_h264_decode() local 433 vdec_h264_get_fb(struct vdec_h264_inst *inst, struct h264_ring_fb_list *list, bool disp_list, struct vdec_fb **out_fb) vdec_h264_get_fb() argument 467 struct vdec_h264_inst *inst = (struct vdec_h264_inst *)h_vdec; vdec_h264_get_param() local [all...] |
/kernel/linux/linux-6.6/drivers/media/platform/amphion/ |
H A D | vpu_v4l2.c | 27 void vpu_inst_lock(struct vpu_inst *inst) in vpu_inst_lock() argument 29 mutex_lock(&inst->lock); in vpu_inst_lock() 32 void vpu_inst_unlock(struct vpu_inst *inst) in vpu_inst_unlock() argument 34 mutex_unlock(&inst->lock); in vpu_inst_unlock() 66 void vpu_v4l2_set_error(struct vpu_inst *inst) in vpu_v4l2_set_error() argument 68 vpu_inst_lock(inst); in vpu_v4l2_set_error() 69 dev_err(inst->dev, "some error occurs in codec\n"); in vpu_v4l2_set_error() 70 if (inst->fh.m2m_ctx) { in vpu_v4l2_set_error() 71 vb2_queue_error(v4l2_m2m_get_src_vq(inst->fh.m2m_ctx)); in vpu_v4l2_set_error() 72 vb2_queue_error(v4l2_m2m_get_dst_vq(inst in vpu_v4l2_set_error() 77 vpu_notify_eos(struct vpu_inst *inst) vpu_notify_eos() argument 90 vpu_notify_source_change(struct vpu_inst *inst) vpu_notify_source_change() argument 103 vpu_set_last_buffer_dequeued(struct vpu_inst *inst, bool eos) vpu_set_last_buffer_dequeued() argument 124 vpu_is_source_empty(struct vpu_inst *inst) vpu_is_source_empty() argument 137 vpu_init_format(struct vpu_inst *inst, struct vpu_format *fmt) vpu_init_format() argument 179 vpu_calc_fmt_sizeimage(struct vpu_inst *inst, struct vpu_format *fmt) vpu_calc_fmt_sizeimage() argument 229 vpu_try_fmt_common(struct vpu_inst *inst, struct v4l2_format *f, struct vpu_format *fmt) vpu_try_fmt_common() argument 269 vpu_check_ready(struct vpu_inst *inst, u32 type) vpu_check_ready() argument 280 vpu_process_output_buffer(struct vpu_inst *inst) vpu_process_output_buffer() argument 306 vpu_process_capture_buffer(struct vpu_inst *inst) vpu_process_capture_buffer() argument 329 vpu_next_src_buf(struct vpu_inst *inst) vpu_next_src_buf() argument 353 vpu_skip_frame(struct vpu_inst *inst, int count) vpu_skip_frame() argument 376 vpu_find_buf_by_sequence(struct vpu_inst *inst, u32 type, u32 sequence) vpu_find_buf_by_sequence() argument 403 vpu_find_buf_by_idx(struct vpu_inst *inst, u32 type, u32 idx) vpu_find_buf_by_idx() argument 430 vpu_get_num_buffers(struct vpu_inst *inst, u32 type) vpu_get_num_buffers() argument 451 struct vpu_inst *inst = priv; vpu_m2m_job_abort() local 468 struct vpu_inst *inst = vb2_get_drv_priv(vq); vpu_vb2_queue_setup() local 519 struct vpu_inst *inst = vb2_get_drv_priv(vb->vb2_queue); vpu_vb2_buf_prepare() local 539 struct vpu_inst *inst = vb2_get_drv_priv(vb->vb2_queue); vpu_vb2_buf_finish() local 549 vpu_vb2_buffers_return(struct vpu_inst *inst, unsigned int type, enum vb2_buffer_state state) vpu_vb2_buffers_return() argument 568 struct vpu_inst *inst = vb2_get_drv_priv(q); vpu_vb2_start_streaming() local 601 struct vpu_inst *inst = vb2_get_drv_priv(q); vpu_vb2_stop_streaming() local 614 struct vpu_inst *inst = vb2_get_drv_priv(vb->vb2_queue); vpu_vb2_buf_queue() local 639 struct vpu_inst *inst = priv; vpu_m2m_queue_init() local 681 vpu_v4l2_release(struct vpu_inst *inst) vpu_v4l2_release() argument 704 vpu_v4l2_open(struct file *file, struct vpu_inst *inst) vpu_v4l2_open() argument 773 struct vpu_inst *inst = to_inst(file); vpu_v4l2_close() local [all...] |
H A D | vdec.c | 194 struct vpu_inst *inst = ctrl_to_inst(ctrl); in vdec_op_s_ctrl() local 195 struct vdec_t *vdec = inst->priv; in vdec_op_s_ctrl() 198 vpu_inst_lock(inst); in vdec_op_s_ctrl() 210 vpu_inst_unlock(inst); in vdec_op_s_ctrl() 220 static int vdec_ctrl_init(struct vpu_inst *inst) in vdec_ctrl_init() argument 225 ret = v4l2_ctrl_handler_init(&inst->ctrl_handler, 20); in vdec_ctrl_init() 229 v4l2_ctrl_new_std(&inst->ctrl_handler, &vdec_ctrl_ops, in vdec_ctrl_init() 233 v4l2_ctrl_new_std(&inst->ctrl_handler, &vdec_ctrl_ops, in vdec_ctrl_init() 237 ctrl = v4l2_ctrl_new_std(&inst->ctrl_handler, &vdec_ctrl_ops, in vdec_ctrl_init() 242 ctrl = v4l2_ctrl_new_std(&inst in vdec_ctrl_init() 263 vdec_handle_resolution_change(struct vpu_inst *inst) vdec_handle_resolution_change() argument 285 vdec_update_state(struct vpu_inst *inst, enum vpu_codec_state state, u32 force) vdec_update_state() argument 311 vdec_set_last_buffer_dequeued(struct vpu_inst *inst) vdec_set_last_buffer_dequeued() argument 337 struct vpu_inst *inst = to_inst(file); vdec_enum_fmt() local 366 struct vpu_inst *inst = to_inst(file); vdec_g_fmt() local 397 struct vpu_inst *inst = to_inst(file); vdec_try_fmt() local 428 vdec_s_fmt_common(struct vpu_inst *inst, struct v4l2_format *f) vdec_s_fmt_common() argument 503 struct vpu_inst *inst = to_inst(file); vdec_s_fmt() local 536 struct vpu_inst *inst = to_inst(file); vdec_g_selection() local 560 vdec_drain(struct vpu_inst *inst) vdec_drain() argument 587 vdec_cmd_start(struct vpu_inst *inst) vdec_cmd_start() argument 606 vdec_cmd_stop(struct vpu_inst *inst) vdec_cmd_stop() argument 624 struct vpu_inst *inst = to_inst(file); vdec_decoder_cmd() local 689 vdec_check_ready(struct vpu_inst *inst, unsigned int type) vdec_check_ready() argument 702 vdec_get_src_buffer(struct vpu_inst *inst, u32 count) vdec_get_src_buffer() argument 710 vdec_frame_decoded(struct vpu_inst *inst, void *arg) vdec_frame_decoded() argument 766 vdec_find_buffer(struct vpu_inst *inst, u32 luma) vdec_find_buffer() argument 781 vdec_buf_done(struct vpu_inst *inst, struct vpu_frame_info *frame) vdec_buf_done() argument 834 vdec_stop_done(struct vpu_inst *inst) vdec_stop_done() argument 857 vdec_check_source_change(struct vpu_inst *inst) vdec_check_source_change() argument 894 vdec_init_fmt(struct vpu_inst *inst) vdec_init_fmt() argument 914 vdec_init_crop(struct vpu_inst *inst) vdec_init_crop() argument 924 vdec_init_mbi(struct vpu_inst *inst) vdec_init_mbi() argument 935 vdec_init_dcp(struct vpu_inst *inst) vdec_init_dcp() argument 953 vdec_alloc_fs_buffer(struct vpu_inst *inst, struct vdec_fs_info *fs) vdec_alloc_fs_buffer() argument 972 vdec_alloc_fs(struct vpu_inst *inst, struct vdec_fs_info *fs) vdec_alloc_fs() argument 996 vdec_response_fs(struct vpu_inst *inst, struct vdec_fs_info *fs) vdec_response_fs() argument 1018 vdec_response_frame_abnormal(struct vpu_inst *inst) vdec_response_frame_abnormal() argument 1038 vdec_response_frame(struct vpu_inst *inst, struct vb2_v4l2_buffer *vbuf) vdec_response_frame() argument 1094 vdec_response_fs_request(struct vpu_inst *inst, bool force) vdec_response_fs_request() argument 1128 vdec_response_fs_release(struct vpu_inst *inst, u32 id, u32 tag) vdec_response_fs_release() argument 1138 vdec_recycle_buffer(struct vpu_inst *inst, struct vb2_v4l2_buffer *vbuf) vdec_recycle_buffer() argument 1149 vdec_clear_slots(struct vpu_inst *inst) vdec_clear_slots() argument 1171 vdec_event_seq_hdr(struct vpu_inst *inst, struct vpu_dec_codec_info *hdr) vdec_event_seq_hdr() argument 1213 vdec_event_resolution_change(struct vpu_inst *inst) vdec_event_resolution_change() argument 1234 vdec_event_req_fs(struct vpu_inst *inst, struct vpu_fs_info *fs) vdec_event_req_fs() argument 1265 vdec_evnet_rel_fs(struct vpu_inst *inst, struct vpu_fs_info *fs) vdec_evnet_rel_fs() argument 1307 vdec_event_eos(struct vpu_inst *inst) vdec_event_eos() argument 1325 vdec_event_notify(struct vpu_inst *inst, u32 event, void *data) vdec_event_notify() argument 1348 vdec_process_output(struct vpu_inst *inst, struct vb2_buffer *vb) vdec_process_output() argument 1390 vdec_process_capture(struct vpu_inst *inst, struct vb2_buffer *vb) vdec_process_capture() argument 1408 vdec_on_queue_empty(struct vpu_inst *inst, u32 type) vdec_on_queue_empty() argument 1420 vdec_abort(struct vpu_inst *inst) vdec_abort() argument 1458 vdec_stop(struct vpu_inst *inst, bool free) vdec_stop() argument 1475 vdec_release(struct vpu_inst *inst) vdec_release() argument 1482 vdec_cleanup(struct vpu_inst *inst) vdec_cleanup() argument 1501 vdec_start(struct vpu_inst *inst) vdec_start() argument 1560 vdec_start_session(struct vpu_inst *inst, u32 type) vdec_start_session() argument 1588 vdec_stop_session(struct vpu_inst *inst, u32 type) vdec_stop_session() argument 1609 vdec_get_debug_info(struct vpu_inst *inst, char *str, u32 size, u32 i) vdec_get_debug_info() argument 1694 struct vpu_inst *inst = to_inst(file); vdec_init() local 1716 struct vpu_inst *inst; vdec_open() local [all...] |
H A D | vpu_msgs.c | 25 void (*done)(struct vpu_inst *inst, struct vpu_rpc_event *pkt); 29 static void vpu_session_handle_start_done(struct vpu_inst *inst, struct vpu_rpc_event *pkt) in vpu_session_handle_start_done() argument 31 vpu_trace(inst->dev, "[%d]\n", inst->id); in vpu_session_handle_start_done() 34 static void vpu_session_handle_mem_request(struct vpu_inst *inst, struct vpu_rpc_event *pkt) in vpu_session_handle_mem_request() argument 38 vpu_iface_unpack_msg_data(inst->core, pkt, (void *)&req_data); in vpu_session_handle_mem_request() 39 vpu_trace(inst->dev, "[%d] %d:%d %d:%d %d:%d\n", in vpu_session_handle_mem_request() 40 inst->id, in vpu_session_handle_mem_request() 47 vpu_inst_lock(inst); in vpu_session_handle_mem_request() 48 call_void_vop(inst, mem_reques in vpu_session_handle_mem_request() 58 vpu_session_handle_stop_done(struct vpu_inst *inst, struct vpu_rpc_event *pkt) vpu_session_handle_stop_done() argument 65 vpu_session_handle_seq_hdr(struct vpu_inst *inst, struct vpu_rpc_event *pkt) vpu_session_handle_seq_hdr() argument 77 vpu_session_handle_resolution_change(struct vpu_inst *inst, struct vpu_rpc_event *pkt) vpu_session_handle_resolution_change() argument 82 vpu_session_handle_enc_frame_done(struct vpu_inst *inst, struct vpu_rpc_event *pkt) vpu_session_handle_enc_frame_done() argument 92 vpu_session_handle_frame_request(struct vpu_inst *inst, struct vpu_rpc_event *pkt) vpu_session_handle_frame_request() argument 100 vpu_session_handle_frame_release(struct vpu_inst *inst, struct vpu_rpc_event *pkt) vpu_session_handle_frame_release() argument 118 vpu_session_handle_input_done(struct vpu_inst *inst, struct vpu_rpc_event *pkt) vpu_session_handle_input_done() argument 124 vpu_session_handle_pic_decoded(struct vpu_inst *inst, struct vpu_rpc_event *pkt) vpu_session_handle_pic_decoded() argument 132 vpu_session_handle_pic_done(struct vpu_inst *inst, struct vpu_rpc_event *pkt) vpu_session_handle_pic_done() argument 149 vpu_session_handle_eos(struct vpu_inst *inst, struct vpu_rpc_event *pkt) vpu_session_handle_eos() argument 154 vpu_session_handle_error(struct vpu_inst *inst, struct vpu_rpc_event *pkt) vpu_session_handle_error() argument 166 vpu_session_handle_firmware_xcpt(struct vpu_inst *inst, struct vpu_rpc_event *pkt) vpu_session_handle_firmware_xcpt() argument 177 vpu_session_handle_pic_skipped(struct vpu_inst *inst, struct vpu_rpc_event *pkt) vpu_session_handle_pic_skipped() argument 184 vpu_session_handle_dbg_msg(struct vpu_inst *inst, struct vpu_rpc_event *pkt) vpu_session_handle_dbg_msg() argument 218 vpu_session_handle_msg(struct vpu_inst *inst, struct vpu_rpc_event *msg) vpu_session_handle_msg() argument 251 vpu_inst_receive_msg(struct vpu_inst *inst, struct vpu_rpc_event *pkt) vpu_inst_receive_msg() argument 276 struct vpu_inst *inst = container_of(work, struct vpu_inst, msg_work); vpu_inst_run_work() local 283 vpu_inst_handle_msg(struct vpu_inst *inst, struct vpu_rpc_event *pkt) vpu_inst_handle_msg() argument 302 struct vpu_inst *inst; vpu_handle_msg() local 389 struct vpu_inst *inst = vpu_core_find_instance(core, i); vpu_msg_delayed_work() local [all...] |
H A D | vpu_cmds.c | 81 static struct vpu_cmd_t *vpu_alloc_cmd(struct vpu_inst *inst, u32 id, void *data) in vpu_alloc_cmd() argument 98 ret = vpu_iface_pack_cmd(inst->core, cmd->pkt, inst->id, id, data); in vpu_alloc_cmd() 100 dev_err(inst->dev, "iface pack cmd %s fail\n", vpu_id_name(id)); in vpu_alloc_cmd() 125 static int vpu_session_process_cmd(struct vpu_inst *inst, struct vpu_cmd_t *cmd) in vpu_session_process_cmd() argument 129 dev_dbg(inst->dev, "[%d]send cmd %s\n", inst->id, vpu_id_name(cmd->id)); in vpu_session_process_cmd() 130 vpu_iface_pre_send_cmd(inst); in vpu_session_process_cmd() 131 ret = vpu_cmd_send(inst->core, cmd->pkt); in vpu_session_process_cmd() 133 vpu_iface_post_send_cmd(inst); in vpu_session_process_cmd() 142 vpu_process_cmd_request(struct vpu_inst *inst) vpu_process_cmd_request() argument 163 vpu_request_cmd(struct vpu_inst *inst, u32 id, void *data, unsigned long *key, int *sync) vpu_request_cmd() argument 191 vpu_clear_pending(struct vpu_inst *inst) vpu_clear_pending() argument 217 vpu_response_cmd(struct vpu_inst *inst, u32 response, u32 handled) vpu_response_cmd() argument 235 vpu_clear_request(struct vpu_inst *inst) vpu_clear_request() argument 251 check_is_responsed(struct vpu_inst *inst, unsigned long key) check_is_responsed() argument 261 sync_session_response(struct vpu_inst *inst, unsigned long key, long timeout, int try) sync_session_response() argument 302 vpu_session_send_cmd(struct vpu_inst *inst, u32 id, void *data) vpu_session_send_cmd() argument 337 vpu_session_configure_codec(struct vpu_inst *inst) vpu_session_configure_codec() argument 342 vpu_session_start(struct vpu_inst *inst) vpu_session_start() argument 349 vpu_session_stop(struct vpu_inst *inst) vpu_session_stop() argument 364 vpu_session_encode_frame(struct vpu_inst *inst, s64 timestamp) vpu_session_encode_frame() argument 369 vpu_session_alloc_fs(struct vpu_inst *inst, struct vpu_fs_info *fs) vpu_session_alloc_fs() argument 374 vpu_session_release_fs(struct vpu_inst *inst, struct vpu_fs_info *fs) vpu_session_release_fs() argument 379 vpu_session_abort(struct vpu_inst *inst) vpu_session_abort() argument 384 vpu_session_rst_buf(struct vpu_inst *inst) vpu_session_rst_buf() argument 389 vpu_session_fill_timestamp(struct vpu_inst *inst, struct vpu_ts_info *info) vpu_session_fill_timestamp() argument 394 vpu_session_update_parameters(struct vpu_inst *inst, void *arg) vpu_session_update_parameters() argument 404 vpu_session_debug(struct vpu_inst *inst) vpu_session_debug() argument 411 struct vpu_inst *inst; vpu_core_snapshot() local [all...] |
/kernel/linux/linux-5.10/drivers/media/platform/qcom/venus/ |
H A D | vdec.c | 91 find_format(struct venus_inst *inst, u32 pixfmt, u32 type) in find_format() argument 106 !venus_helper_check_codec(inst, fmt[i].pixfmt)) in find_format() 113 find_format_by_index(struct venus_inst *inst, unsigned int index, u32 type) in find_format_by_index() argument 128 venus_helper_check_codec(inst, fmt[i].pixfmt); in find_format_by_index() 142 vdec_try_fmt_common(struct venus_inst *inst, struct v4l2_format *f) in vdec_try_fmt_common() argument 152 fmt = find_format(inst, pixmp->pixelformat, f->type); in vdec_try_fmt_common() 160 fmt = find_format(inst, pixmp->pixelformat, f->type); in vdec_try_fmt_common() 165 pixmp->width = clamp(pixmp->width, frame_width_min(inst), in vdec_try_fmt_common() 166 frame_width_max(inst)); in vdec_try_fmt_common() 167 pixmp->height = clamp(pixmp->height, frame_height_min(inst), in vdec_try_fmt_common() 195 struct venus_inst *inst = to_inst(file); vdec_try_fmt() local 202 vdec_check_src_change(struct venus_inst *inst) vdec_check_src_change() argument 238 struct venus_inst *inst = to_inst(file); vdec_g_fmt() local 275 struct venus_inst *inst = to_inst(file); vdec_s_fmt() local 342 struct venus_inst *inst = to_inst(file); vdec_g_selection() local 393 struct venus_inst *inst = to_inst(file); vdec_enum_fmt() local 410 struct venus_inst *inst = to_inst(file); vdec_s_parm() local 445 struct venus_inst *inst = to_inst(file); vdec_enum_framesizes() local 475 struct venus_inst *inst = container_of(fh, struct venus_inst, fh); vdec_subscribe_event() local 497 struct venus_inst *inst = to_inst(file); vdec_decoder_cmd() local 568 vdec_pm_get(struct venus_inst *inst) vdec_pm_get() argument 581 vdec_pm_put(struct venus_inst *inst, bool autosuspend) vdec_pm_put() argument 599 vdec_pm_get_put(struct venus_inst *inst) vdec_pm_get_put() argument 621 vdec_pm_touch(struct venus_inst *inst) vdec_pm_touch() argument 626 vdec_set_properties(struct venus_inst *inst) vdec_set_properties() argument 645 vdec_output_conf(struct venus_inst *inst) vdec_output_conf() argument 766 vdec_session_init(struct venus_inst *inst) vdec_session_init() argument 791 vdec_num_buffers(struct venus_inst *inst, unsigned int *in_num, unsigned int *out_num) vdec_num_buffers() argument 819 struct venus_inst *inst = vb2_get_drv_priv(q); vdec_queue_setup() local 899 vdec_verify_conf(struct venus_inst *inst) vdec_verify_conf() argument 926 vdec_start_capture(struct venus_inst *inst) vdec_start_capture() argument 998 vdec_start_output(struct venus_inst *inst) vdec_start_output() argument 1059 struct venus_inst *inst = vb2_get_drv_priv(q); vdec_start_streaming() local 1096 vdec_cancel_dst_buffers(struct venus_inst *inst) vdec_cancel_dst_buffers() argument 1104 vdec_stop_capture(struct venus_inst *inst) vdec_stop_capture() argument 1131 vdec_stop_output(struct venus_inst *inst) vdec_stop_output() argument 1156 struct venus_inst *inst = vb2_get_drv_priv(q); vdec_stop_streaming() local 1180 vdec_session_release(struct venus_inst *inst) vdec_session_release() argument 1218 struct venus_inst *inst = vb2_get_drv_priv(vb->vb2_queue); vdec_buf_init() local 1227 struct venus_inst *inst = vb2_get_drv_priv(vb->vb2_queue); vdec_buf_cleanup() local 1244 struct venus_inst *inst = vb2_get_drv_priv(vb->vb2_queue); vdec_vb2_buf_queue() local 1280 vdec_buf_done(struct venus_inst *inst, unsigned int buf_type, u32 tag, u32 bytesused, u32 data_offset, u32 flags, u32 hfi_flags, u64 timestamp_us) vdec_buf_done() argument 1344 vdec_event_change(struct venus_inst *inst, struct hfi_event_data *ev_data, bool sufficient) vdec_event_change() argument 1410 vdec_event_notify(struct venus_inst *inst, u32 event, struct hfi_event_data *data) vdec_event_notify() argument 1443 vdec_flush_done(struct venus_inst *inst) vdec_flush_done() argument 1454 vdec_inst_init(struct venus_inst *inst) vdec_inst_init() argument 1481 struct venus_inst *inst = priv; m2m_queue_init() local 1514 struct venus_inst *inst; vdec_open() local 1586 struct venus_inst *inst = to_inst(file); vdec_close() local [all...] |
H A D | venc.c | 63 find_format(struct venus_inst *inst, u32 pixfmt, u32 type) in find_format() argument 78 !venus_helper_check_codec(inst, fmt[i].pixfmt)) in find_format() 85 find_format_by_index(struct venus_inst *inst, unsigned int index, u32 type) in find_format_by_index() argument 100 venus_helper_check_codec(inst, fmt[i].pixfmt); in find_format_by_index() 151 struct venus_inst *inst = to_inst(file); in venc_enum_fmt() local 154 fmt = find_format_by_index(inst, f->index, f->type); in venc_enum_fmt() 167 venc_try_fmt_common(struct venus_inst *inst, struct v4l2_format *f) in venc_try_fmt_common() argument 177 fmt = find_format(inst, pixmp->pixelformat, f->type); in venc_try_fmt_common() 185 fmt = find_format(inst, pixmp->pixelformat, f->type); in venc_try_fmt_common() 190 pixmp->width = clamp(pixmp->width, frame_width_min(inst), in venc_try_fmt_common() 221 struct venus_inst *inst = to_inst(file); venc_try_fmt() local 230 struct venus_inst *inst = to_inst(file); venc_s_fmt() local 300 struct venus_inst *inst = to_inst(file); venc_g_fmt() local 332 struct venus_inst *inst = to_inst(file); venc_g_selection() local 360 struct venus_inst *inst = to_inst(file); venc_s_selection() local 381 struct venus_inst *inst = to_inst(file); venc_s_parm() local 416 struct venus_inst *inst = to_inst(file); venc_g_parm() local 431 struct venus_inst *inst = to_inst(file); venc_enum_framesizes() local 461 struct venus_inst *inst = to_inst(file); venc_enum_frameintervals() local 532 venc_set_properties(struct venus_inst *inst) venc_set_properties() argument 725 venc_init_session(struct venus_inst *inst) venc_init_session() argument 762 venc_out_num_buffers(struct venus_inst *inst, unsigned int *num) venc_out_num_buffers() argument 784 struct venus_inst *inst = vb2_get_drv_priv(q); venc_queue_setup() local 843 venc_verify_conf(struct venus_inst *inst) venc_verify_conf() argument 873 struct venus_inst *inst = vb2_get_drv_priv(q); venc_start_streaming() local 943 venc_buf_done(struct venus_inst *inst, unsigned int buf_type, u32 tag, u32 bytesused, u32 data_offset, u32 flags, u32 hfi_flags, u64 timestamp_us) venc_buf_done() argument 975 venc_event_notify(struct venus_inst *inst, u32 event, struct hfi_event_data *data) venc_event_notify() argument 999 struct venus_inst *inst = priv; m2m_queue_init() local 1031 venc_inst_init(struct venus_inst *inst) venc_inst_init() argument 1048 struct venus_inst *inst; venc_open() local 1121 struct venus_inst *inst = to_inst(file); venc_close() local [all...] |
/kernel/linux/linux-6.6/drivers/media/platform/mediatek/vcodec/encoder/venc/ |
H A D | venc_h264_if.c | 226 static inline u32 h264_read_reg(struct venc_h264_inst *inst, u32 addr) in h264_read_reg() argument 228 return readl(inst->hw_base + addr); in h264_read_reg() 231 static unsigned int h264_get_profile(struct venc_h264_inst *inst, in h264_get_profile() argument 242 mtk_venc_err(inst->ctx, "unsupported CONSTRAINED_BASELINE"); in h264_get_profile() 245 mtk_venc_err(inst->ctx, "unsupported EXTENDED"); in h264_get_profile() 248 mtk_venc_debug(inst->ctx, "unsupported profile %d", profile); in h264_get_profile() 253 static unsigned int h264_get_level(struct venc_h264_inst *inst, in h264_get_level() argument 258 mtk_venc_err(inst->ctx, "unsupported 1B"); in h264_get_level() 291 mtk_venc_debug(inst->ctx, "unsupported level %d", level); in h264_get_level() 296 static void h264_enc_free_work_buf(struct venc_h264_inst *inst) in h264_enc_free_work_buf() argument 311 h264_enc_alloc_work_buf(struct venc_h264_inst *inst, bool is_34bit) h264_enc_alloc_work_buf() argument 408 h264_enc_wait_venc_done(struct venc_h264_inst *inst) h264_enc_wait_venc_done() argument 437 h264_encode_sps(struct venc_h264_inst *inst, struct mtk_vcodec_mem *bs_buf, unsigned int *bs_size) h264_encode_sps() argument 460 h264_encode_pps(struct venc_h264_inst *inst, struct mtk_vcodec_mem *bs_buf, unsigned int *bs_size) h264_encode_pps() argument 483 h264_encode_header(struct venc_h264_inst *inst, struct mtk_vcodec_mem *bs_buf, unsigned int *bs_size) h264_encode_header() argument 505 h264_encode_frame(struct venc_h264_inst *inst, struct venc_frm_buf *frm_buf, struct mtk_vcodec_mem *bs_buf, unsigned int *bs_size) h264_encode_frame() argument 568 h264_encode_filler(struct venc_h264_inst *inst, void *buf, int size) h264_encode_filler() argument 588 struct venc_h264_inst *inst; h264_enc_init() local 621 struct venc_h264_inst *inst = (struct venc_h264_inst *)handle; h264_enc_encode() local 708 h264_enc_set_vsi_configs(struct venc_h264_inst *inst, struct venc_enc_param *enc_prm) h264_enc_set_vsi_configs() argument 727 h264_enc_set_vsi_34_configs(struct venc_h264_inst *inst, struct venc_enc_param *enc_prm) h264_enc_set_vsi_34_configs() argument 751 struct venc_h264_inst *inst = (struct venc_h264_inst *)handle; h264_enc_set_param() local 797 struct venc_h264_inst *inst = (struct venc_h264_inst *)handle; h264_enc_deinit() local [all...] |
H A D | venc_vp8_if.c | 134 static inline u32 vp8_enc_read_reg(struct venc_vp8_inst *inst, u32 addr) in vp8_enc_read_reg() argument 136 return readl(inst->hw_base + addr); in vp8_enc_read_reg() 139 static void vp8_enc_free_work_buf(struct venc_vp8_inst *inst) in vp8_enc_free_work_buf() argument 145 if (inst->work_bufs[i].size == 0) in vp8_enc_free_work_buf() 147 mtk_vcodec_mem_free(inst->ctx, &inst->work_bufs[i]); in vp8_enc_free_work_buf() 151 static int vp8_enc_alloc_work_buf(struct venc_vp8_inst *inst) in vp8_enc_alloc_work_buf() argument 155 struct venc_vp8_vpu_buf *wb = inst->vsi->work_bufs; in vp8_enc_alloc_work_buf() 170 inst->work_bufs[i].size = wb[i].size; in vp8_enc_alloc_work_buf() 171 ret = mtk_vcodec_mem_alloc(inst in vp8_enc_alloc_work_buf() 208 vp8_enc_wait_venc_done(struct venc_vp8_inst *inst) vp8_enc_wait_venc_done() argument 225 vp8_enc_compose_one_frame(struct venc_vp8_inst *inst, struct mtk_vcodec_mem *bs_buf, unsigned int *bs_size) vp8_enc_compose_one_frame() argument 283 vp8_enc_encode_frame(struct venc_vp8_inst *inst, struct venc_frm_buf *frm_buf, struct mtk_vcodec_mem *bs_buf, unsigned int *bs_size) vp8_enc_encode_frame() argument 317 struct venc_vp8_inst *inst; vp8_enc_init() local 347 struct venc_vp8_inst *inst = (struct venc_vp8_inst *)handle; vp8_enc_encode() local 378 struct venc_vp8_inst *inst = (struct venc_vp8_inst *)handle; vp8_enc_set_param() local 425 struct venc_vp8_inst *inst = (struct venc_vp8_inst *)handle; vp8_enc_deinit() local [all...] |
/kernel/linux/linux-6.6/drivers/gpu/drm/amd/display/dc/dcn32/ |
H A D | dcn32_mpc.h | 34 #define MPC_REG_LIST_DCN3_2(inst) \ 35 MPC_REG_LIST_DCN3_0(inst),\ 36 SRII(MPCC_MOVABLE_CM_LOCATION_CONTROL, MPCC, inst),\ 37 SRII(MPCC_MCM_SHAPER_CONTROL, MPCC_MCM, inst),\ 38 SRII(MPCC_MCM_SHAPER_OFFSET_R, MPCC_MCM, inst),\ 39 SRII(MPCC_MCM_SHAPER_OFFSET_G, MPCC_MCM, inst),\ 40 SRII(MPCC_MCM_SHAPER_OFFSET_B, MPCC_MCM, inst),\ 41 SRII(MPCC_MCM_SHAPER_SCALE_R, MPCC_MCM, inst),\ 42 SRII(MPCC_MCM_SHAPER_SCALE_G_B, MPCC_MCM, inst),\ 43 SRII(MPCC_MCM_SHAPER_LUT_INDEX, MPCC_MCM, inst),\ [all...] |
/kernel/linux/linux-5.10/arch/powerpc/include/asm/ |
H A D | disassemble.h | 14 static inline unsigned int get_op(u32 inst) in get_op() argument 16 return inst >> 26; in get_op() 19 static inline unsigned int get_xop(u32 inst) in get_xop() argument 21 return (inst >> 1) & 0x3ff; in get_xop() 24 static inline unsigned int get_sprn(u32 inst) in get_sprn() argument 26 return ((inst >> 16) & 0x1f) | ((inst >> 6) & 0x3e0); in get_sprn() 29 static inline unsigned int get_dcrn(u32 inst) in get_dcrn() argument 31 return ((inst >> 16) & 0x1f) | ((inst >> in get_dcrn() 34 get_tmrn(u32 inst) get_tmrn() argument 39 get_rt(u32 inst) get_rt() argument 44 get_rs(u32 inst) get_rs() argument 49 get_ra(u32 inst) get_ra() argument 54 get_rb(u32 inst) get_rb() argument 59 get_rc(u32 inst) get_rc() argument 64 get_ws(u32 inst) get_ws() argument 69 get_d(u32 inst) get_d() argument 74 get_oc(u32 inst) get_oc() argument 79 get_tx_or_sx(u32 inst) get_tx_or_sx() argument [all...] |
/kernel/linux/linux-6.6/arch/powerpc/include/asm/ |
H A D | disassemble.h | 14 static inline unsigned int get_op(u32 inst) in get_op() argument 16 return inst >> 26; in get_op() 19 static inline unsigned int get_xop(u32 inst) in get_xop() argument 21 return (inst >> 1) & 0x3ff; in get_xop() 24 static inline unsigned int get_sprn(u32 inst) in get_sprn() argument 26 return ((inst >> 16) & 0x1f) | ((inst >> 6) & 0x3e0); in get_sprn() 29 static inline unsigned int get_dcrn(u32 inst) in get_dcrn() argument 31 return ((inst >> 16) & 0x1f) | ((inst >> in get_dcrn() 34 get_tmrn(u32 inst) get_tmrn() argument 39 get_rt(u32 inst) get_rt() argument 44 get_rs(u32 inst) get_rs() argument 49 get_ra(u32 inst) get_ra() argument 54 get_rb(u32 inst) get_rb() argument 59 get_rc(u32 inst) get_rc() argument 64 get_ws(u32 inst) get_ws() argument 69 get_d(u32 inst) get_d() argument 74 get_oc(u32 inst) get_oc() argument 79 get_tx_or_sx(u32 inst) get_tx_or_sx() argument [all...] |
/kernel/linux/linux-5.10/arch/arm/vfp/ |
H A D | vfpinstr.h | 10 #define INST_CPRTDO(inst) (((inst) & 0x0f000000) == 0x0e000000) 11 #define INST_CPRT(inst) ((inst) & (1 << 4)) 12 #define INST_CPRT_L(inst) ((inst) & (1 << 20)) 13 #define INST_CPRT_Rd(inst) (((inst) & (15 << 12)) >> 12) 14 #define INST_CPRT_OP(inst) (((inst) >> 2 [all...] |
/kernel/linux/linux-6.6/arch/arm/vfp/ |
H A D | vfpinstr.h | 10 #define INST_CPRTDO(inst) (((inst) & 0x0f000000) == 0x0e000000) 11 #define INST_CPRT(inst) ((inst) & (1 << 4)) 12 #define INST_CPRT_L(inst) ((inst) & (1 << 20)) 13 #define INST_CPRT_Rd(inst) (((inst) & (15 << 12)) >> 12) 14 #define INST_CPRT_OP(inst) (((inst) >> 2 [all...] |