s5p_mfc_ctx
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
static void wake_up_ctx(struct s5p_mfc_ctx *ctx, unsigned int reason,
struct s5p_mfc_ctx *ctx;
struct s5p_mfc_ctx *ctx;
static void s5p_mfc_handle_frame_all_extracted(struct s5p_mfc_ctx *ctx)
static void s5p_mfc_handle_frame_copy_time(struct s5p_mfc_ctx *ctx)
static void s5p_mfc_handle_frame_new(struct s5p_mfc_ctx *ctx, unsigned int err)
static void s5p_mfc_handle_frame(struct s5p_mfc_ctx *ctx,
struct s5p_mfc_ctx *ctx, unsigned int reason, unsigned int err)
void clear_work_bit(struct s5p_mfc_ctx *ctx)
static void s5p_mfc_handle_seq_done(struct s5p_mfc_ctx *ctx,
static void s5p_mfc_handle_init_buffers(struct s5p_mfc_ctx *ctx,
void set_work_bit(struct s5p_mfc_ctx *ctx)
static void s5p_mfc_handle_stream_complete(struct s5p_mfc_ctx *ctx)
struct s5p_mfc_ctx *ctx;
void clear_work_bit_irqsave(struct s5p_mfc_ctx *ctx)
struct s5p_mfc_ctx *ctx = NULL;
void set_work_bit_irqsave(struct s5p_mfc_ctx *ctx)
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
int (*open_inst_cmd)(struct s5p_mfc_ctx *ctx);
int (*close_inst_cmd)(struct s5p_mfc_ctx *ctx);
static int s5p_mfc_close_inst_cmd_v5(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_open_inst_cmd_v5(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_close_inst_cmd_v6(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_open_inst_cmd_v6(struct s5p_mfc_ctx *ctx)
struct s5p_mfc_ctx;
struct s5p_mfc_ctx *ctx[MFC_NUM_CONTEXTS];
int (*pre_seq_start) (struct s5p_mfc_ctx *ctx);
int (*post_seq_start) (struct s5p_mfc_ctx *ctx);
int (*pre_frame_start) (struct s5p_mfc_ctx *ctx);
int (*post_frame_start) (struct s5p_mfc_ctx *ctx);
static inline struct s5p_mfc_ctx *file_to_ctx(struct file *filp)
return container_of(file_to_v4l2_fh(filp), struct s5p_mfc_ctx, fh);
container_of((__ctrl)->handler, struct s5p_mfc_ctx, ctrl_handler)
void clear_work_bit(struct s5p_mfc_ctx *ctx);
void set_work_bit(struct s5p_mfc_ctx *ctx);
void clear_work_bit_irqsave(struct s5p_mfc_ctx *ctx);
void set_work_bit_irqsave(struct s5p_mfc_ctx *ctx);
int s5p_mfc_open_mfc_inst(struct s5p_mfc_dev *dev, struct s5p_mfc_ctx *ctx)
void s5p_mfc_close_mfc_inst(struct s5p_mfc_dev *dev, struct s5p_mfc_ctx *ctx)
int s5p_mfc_open_mfc_inst(struct s5p_mfc_dev *dev, struct s5p_mfc_ctx *ctx);
void s5p_mfc_close_mfc_inst(struct s5p_mfc_dev *dev, struct s5p_mfc_ctx *ctx);
struct s5p_mfc_ctx *ctx = vb2_get_drv_priv(vq);
struct s5p_mfc_ctx *ctx = vb2_get_drv_priv(q);
struct s5p_mfc_ctx *ctx = vb2_get_drv_priv(q);
struct s5p_mfc_ctx *ctx = vb2_get_drv_priv(vq);
int s5p_mfc_dec_ctrls_setup(struct s5p_mfc_ctx *ctx)
void s5p_mfc_dec_ctrls_delete(struct s5p_mfc_ctx *ctx)
void s5p_mfc_dec_init(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_ctx_ready(struct s5p_mfc_ctx *ctx)
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
static int reqbufs_output(struct s5p_mfc_dev *dev, struct s5p_mfc_ctx *ctx,
static int reqbufs_capture(struct s5p_mfc_dev *dev, struct s5p_mfc_ctx *ctx,
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
struct s5p_mfc_ctx *ctx = ctrl_to_ctx(ctrl);
struct s5p_mfc_ctx *ctx = ctrl_to_ctx(ctrl);
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
struct s5p_mfc_ctx *ctx = vb2_get_drv_priv(vq);
int s5p_mfc_dec_ctrls_setup(struct s5p_mfc_ctx *ctx);
void s5p_mfc_dec_ctrls_delete(struct s5p_mfc_ctx *ctx);
void s5p_mfc_dec_init(struct s5p_mfc_ctx *ctx);
static int s5p_mfc_ctx_ready(struct s5p_mfc_ctx *ctx)
static void cleanup_ref_queue(struct s5p_mfc_ctx *ctx)
static int enc_pre_seq_start(struct s5p_mfc_ctx *ctx)
static int enc_post_seq_start(struct s5p_mfc_ctx *ctx)
static int enc_pre_frame_start(struct s5p_mfc_ctx *ctx)
static int enc_post_frame_start(struct s5p_mfc_ctx *ctx)
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
static void __enc_update_hevc_qp_ctrls_range(struct s5p_mfc_ctx *ctx,
struct s5p_mfc_ctx *ctx = ctrl_to_ctx(ctrl);
struct s5p_mfc_ctx *ctx = ctrl_to_ctx(ctrl);
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
struct s5p_mfc_ctx *ctx = file_to_ctx(file);
struct s5p_mfc_ctx *ctx = vb2_get_drv_priv(vq);
struct s5p_mfc_ctx *ctx = vb2_get_drv_priv(vq);
struct s5p_mfc_ctx *ctx = vb2_get_drv_priv(vq);
struct s5p_mfc_ctx *ctx = vb2_get_drv_priv(q);
struct s5p_mfc_ctx *ctx = vb2_get_drv_priv(q);
struct s5p_mfc_ctx *ctx = vb2_get_drv_priv(vq);
int s5p_mfc_enc_ctrls_setup(struct s5p_mfc_ctx *ctx)
void s5p_mfc_enc_ctrls_delete(struct s5p_mfc_ctx *ctx)
void s5p_mfc_enc_init(struct s5p_mfc_ctx *ctx)
int s5p_mfc_enc_ctrls_setup(struct s5p_mfc_ctx *ctx);
void s5p_mfc_enc_ctrls_delete(struct s5p_mfc_ctx *ctx);
void s5p_mfc_enc_init(struct s5p_mfc_ctx *ctx);
int s5p_mfc_wait_for_done_ctx(struct s5p_mfc_ctx *ctx,
void s5p_mfc_clean_ctx_int_flags(struct s5p_mfc_ctx *ctx)
int s5p_mfc_wait_for_done_ctx(struct s5p_mfc_ctx *ctx,
void s5p_mfc_clean_ctx_int_flags(struct s5p_mfc_ctx *ctx);
int (*alloc_dec_temp_buffers)(struct s5p_mfc_ctx *ctx);
void (*release_dec_desc_buffer)(struct s5p_mfc_ctx *ctx);
int (*alloc_codec_buffers)(struct s5p_mfc_ctx *ctx);
void (*release_codec_buffers)(struct s5p_mfc_ctx *ctx);
int (*alloc_instance_buffer)(struct s5p_mfc_ctx *ctx);
void (*release_instance_buffer)(struct s5p_mfc_ctx *ctx);
void (*dec_calc_dpb_size)(struct s5p_mfc_ctx *ctx);
void (*enc_calc_src_size)(struct s5p_mfc_ctx *ctx);
int (*set_enc_stream_buffer)(struct s5p_mfc_ctx *ctx,
void (*set_enc_frame_buffer)(struct s5p_mfc_ctx *ctx,
void (*get_enc_frame_buffer)(struct s5p_mfc_ctx *ctx,
int (*get_disp_frame_type)(struct s5p_mfc_ctx *ctx);
unsigned int (*get_pic_type_top)(struct s5p_mfc_ctx *ctx);
unsigned int (*get_pic_type_bot)(struct s5p_mfc_ctx *ctx);
unsigned int (*get_crop_info_h)(struct s5p_mfc_ctx *ctx);
unsigned int (*get_crop_info_v)(struct s5p_mfc_ctx *ctx);
static int s5p_mfc_init_decode_v5(struct s5p_mfc_ctx *ctx)
static void s5p_mfc_set_flush(struct s5p_mfc_ctx *ctx, int flush)
static int s5p_mfc_decode_one_frame_v5(struct s5p_mfc_ctx *ctx,
static int s5p_mfc_init_encode_v5(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_encode_one_frame_v5(struct s5p_mfc_ctx *ctx)
static void s5p_mfc_run_res_change(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_run_dec_frame(struct s5p_mfc_ctx *ctx, int last_frame)
static int s5p_mfc_run_enc_frame(struct s5p_mfc_ctx *ctx)
static void s5p_mfc_run_init_dec(struct s5p_mfc_ctx *ctx)
static void s5p_mfc_run_init_enc(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_run_init_dec_buffers(struct s5p_mfc_ctx *ctx)
struct s5p_mfc_ctx *ctx;
static int s5p_mfc_get_disp_frame_type_v5(struct s5p_mfc_ctx *ctx)
static unsigned int s5p_mfc_get_pic_type_top_v5(struct s5p_mfc_ctx *ctx)
static unsigned int s5p_mfc_get_pic_type_bot_v5(struct s5p_mfc_ctx *ctx)
static unsigned int s5p_mfc_get_crop_info_h_v5(struct s5p_mfc_ctx *ctx)
static unsigned int s5p_mfc_get_crop_info_v_v5(struct s5p_mfc_ctx *ctx)
static void s5p_mfc_release_codec_buffers_v5(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_alloc_instance_buffer_v5(struct s5p_mfc_ctx *ctx)
static void s5p_mfc_release_instance_buffer_v5(struct s5p_mfc_ctx *ctx)
static void s5p_mfc_write_info_v5(struct s5p_mfc_ctx *ctx, unsigned int data,
static unsigned int s5p_mfc_read_info_v5(struct s5p_mfc_ctx *ctx,
static void s5p_mfc_dec_calc_dpb_size_v5(struct s5p_mfc_ctx *ctx)
static void s5p_mfc_enc_calc_src_size_v5(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_alloc_dec_temp_buffers_v5(struct s5p_mfc_ctx *ctx)
static void s5p_mfc_set_dec_desc_buffer(struct s5p_mfc_ctx *ctx)
static void s5p_mfc_set_shared_buffer(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_set_dec_stream_buffer_v5(struct s5p_mfc_ctx *ctx,
static int s5p_mfc_set_dec_frame_buffer_v5(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_set_enc_stream_buffer_v5(struct s5p_mfc_ctx *ctx,
static void s5p_mfc_set_enc_frame_buffer_v5(struct s5p_mfc_ctx *ctx,
static void s5p_mfc_get_enc_frame_buffer_v5(struct s5p_mfc_ctx *ctx,
static int s5p_mfc_set_enc_ref_buffer_v5(struct s5p_mfc_ctx *ctx)
static void s5p_mfc_release_dec_desc_buffer_v5(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_alloc_codec_buffers_v5(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_set_enc_params(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_set_enc_params_h264(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_set_enc_params_mpeg4(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_set_enc_params_h263(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_set_enc_params_h264(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_set_enc_params_mpeg4(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_set_enc_params_h263(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_set_enc_params_vp8(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_set_enc_params_hevc(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_init_decode_v6(struct s5p_mfc_ctx *ctx)
static inline void s5p_mfc_set_flush(struct s5p_mfc_ctx *ctx, int flush)
static int s5p_mfc_decode_one_frame_v6(struct s5p_mfc_ctx *ctx,
static int s5p_mfc_init_encode_v6(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_h264_set_aso_slice_order_v6(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_encode_one_frame_v6(struct s5p_mfc_ctx *ctx)
static inline void s5p_mfc_run_dec_last_frames(struct s5p_mfc_ctx *ctx)
static inline int s5p_mfc_run_dec_frame(struct s5p_mfc_ctx *ctx)
static inline int s5p_mfc_run_enc_frame(struct s5p_mfc_ctx *ctx)
static inline void s5p_mfc_run_init_dec(struct s5p_mfc_ctx *ctx)
static inline void s5p_mfc_run_init_enc(struct s5p_mfc_ctx *ctx)
static inline int s5p_mfc_run_init_dec_buffers(struct s5p_mfc_ctx *ctx)
static inline int s5p_mfc_run_init_enc_buffers(struct s5p_mfc_ctx *ctx)
struct s5p_mfc_ctx *ctx;
s5p_mfc_read_info_v6(struct s5p_mfc_ctx *ctx, unsigned long ofs)
static int s5p_mfc_get_disp_frame_type_v6(struct s5p_mfc_ctx *ctx)
static unsigned int s5p_mfc_get_pic_type_top_v6(struct s5p_mfc_ctx *ctx)
static unsigned int s5p_mfc_get_pic_type_bot_v6(struct s5p_mfc_ctx *ctx)
static unsigned int s5p_mfc_get_crop_info_h_v6(struct s5p_mfc_ctx *ctx)
static unsigned int s5p_mfc_get_crop_info_v_v6(struct s5p_mfc_ctx *ctx)
static void s5p_mfc_release_codec_buffers_v6(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_alloc_instance_buffer_v6(struct s5p_mfc_ctx *ctx)
static void s5p_mfc_release_instance_buffer_v6(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_alloc_dec_temp_buffers_v6(struct s5p_mfc_ctx *ctx)
static void s5p_mfc_dec_calc_dpb_size_v6(struct s5p_mfc_ctx *ctx)
static void s5p_mfc_enc_calc_src_size_v6(struct s5p_mfc_ctx *ctx)
static void s5p_mfc_release_dec_desc_buffer_v6(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_set_dec_stream_buffer_v6(struct s5p_mfc_ctx *ctx,
static int s5p_mfc_alloc_codec_buffers_v6(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_set_dec_frame_buffer_v6(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_set_enc_stream_buffer_v6(struct s5p_mfc_ctx *ctx,
static void s5p_mfc_set_enc_frame_buffer_v6(struct s5p_mfc_ctx *ctx,
static void s5p_mfc_get_enc_frame_buffer_v6(struct s5p_mfc_ctx *ctx,
static int s5p_mfc_set_enc_ref_buffer_v6(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_set_slice_mode(struct s5p_mfc_ctx *ctx)
static int s5p_mfc_set_enc_params(struct s5p_mfc_ctx *ctx)