msm_vdec.h 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. /* SPDX-License-Identifier: GPL-2.0-only */
  2. /*
  3. * Copyright (c) 2020-2021, The Linux Foundation. All rights reserved.
  4. * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
  5. */
  6. #ifndef _MSM_VDEC_H_
  7. #define _MSM_VDEC_H_
  8. #include "msm_vidc_inst.h"
  9. #include "msm_vidc_core.h"
  10. int msm_vdec_streamoff_input(struct msm_vidc_inst *inst);
  11. int msm_vdec_streamon_input(struct msm_vidc_inst *inst);
  12. int msm_vdec_streamoff_output(struct msm_vidc_inst *inst);
  13. int msm_vdec_streamon_output(struct msm_vidc_inst *inst);
  14. int msm_vdec_qbuf(struct msm_vidc_inst *inst, struct vb2_buffer *vb2);
  15. int msm_vdec_try_fmt(struct msm_vidc_inst *inst, struct v4l2_format *f);
  16. int msm_vdec_s_fmt(struct msm_vidc_inst *inst, struct v4l2_format *f);
  17. int msm_vdec_g_fmt(struct msm_vidc_inst *inst, struct v4l2_format *f);
  18. int msm_vdec_s_selection(struct msm_vidc_inst *inst, struct v4l2_selection *s);
  19. int msm_vdec_g_selection(struct msm_vidc_inst *inst, struct v4l2_selection *s);
  20. int msm_vdec_subscribe_event(struct msm_vidc_inst *inst,
  21. const struct v4l2_event_subscription *sub);
  22. int msm_vdec_enum_fmt(struct msm_vidc_inst *inst, struct v4l2_fmtdesc *f);
  23. int msm_vdec_inst_init(struct msm_vidc_inst *inst);
  24. int msm_vdec_inst_deinit(struct msm_vidc_inst *inst);
  25. int msm_vdec_init_input_subcr_params(struct msm_vidc_inst *inst);
  26. int msm_vdec_input_port_settings_change(struct msm_vidc_inst *inst);
  27. int msm_vdec_output_port_settings_change(struct msm_vidc_inst *inst);
  28. int msm_vdec_stop_cmd(struct msm_vidc_inst *inst);
  29. int msm_vdec_start_cmd(struct msm_vidc_inst *inst);
  30. int msm_vdec_handle_release_buffer(struct msm_vidc_inst *inst,
  31. struct msm_vidc_buffer *buf);
  32. int msm_vdec_set_num_comv(struct msm_vidc_inst *inst);
  33. int msm_vdec_subscribe_metadata(struct msm_vidc_inst *inst,
  34. enum msm_vidc_port_type port);
  35. int msm_vdec_get_input_internal_buffers(struct msm_vidc_inst *inst);
  36. int msm_vdec_create_input_internal_buffers(struct msm_vidc_inst *inst);
  37. int msm_vdec_queue_input_internal_buffers(struct msm_vidc_inst *inst);
  38. int msm_vdec_release_input_internal_buffers(struct msm_vidc_inst *inst);
  39. #endif // _MSM_VDEC_H_