msm_venc.h 1.6 KB

1234567891011121314151617181920212223242526272829303132333435
  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_VENC_H_
  7. #define _MSM_VENC_H_
  8. #include "msm_vidc_inst.h"
  9. #include "msm_vidc_core.h"
  10. int msm_venc_streamoff_input(struct msm_vidc_inst *inst);
  11. int msm_venc_streamon_input(struct msm_vidc_inst *inst);
  12. int msm_venc_streamoff_output(struct msm_vidc_inst *inst);
  13. int msm_venc_streamon_output(struct msm_vidc_inst *inst);
  14. int msm_venc_qbuf(struct msm_vidc_inst *inst, struct vb2_buffer *vb2);
  15. int msm_venc_process_cmd(struct msm_vidc_inst *inst, u32 cmd);
  16. int msm_venc_try_fmt(struct msm_vidc_inst *inst, struct v4l2_format *f);
  17. int msm_venc_s_fmt(struct msm_vidc_inst *inst, struct v4l2_format *f);
  18. int msm_venc_s_fmt_output(struct msm_vidc_inst *inst, struct v4l2_format *f);
  19. int msm_venc_g_fmt(struct msm_vidc_inst *inst, struct v4l2_format *f);
  20. int msm_venc_s_selection(struct msm_vidc_inst* inst, struct v4l2_selection* s);
  21. int msm_venc_g_selection(struct msm_vidc_inst* inst, struct v4l2_selection* s);
  22. int msm_venc_s_param(struct msm_vidc_inst *inst,
  23. struct v4l2_streamparm *s_parm);
  24. int msm_venc_g_param(struct msm_vidc_inst *inst,
  25. struct v4l2_streamparm *s_parm);
  26. int msm_venc_subscribe_event(struct msm_vidc_inst *inst,
  27. const struct v4l2_event_subscription *sub);
  28. int msm_venc_enum_fmt(struct msm_vidc_inst *inst, struct v4l2_fmtdesc *f);
  29. int msm_venc_inst_init(struct msm_vidc_inst *inst);
  30. int msm_venc_inst_deinit(struct msm_vidc_inst *inst);
  31. #endif // _MSM_VENC_H_