msm_vidc_utils.h 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
  2. /*
  3. * Copyright (c) 2020, The Linux Foundation. All rights reserved.
  4. */
  5. #ifndef __MSM_VIDC_UTILS_H__
  6. #define __MSM_VIDC_UTILS_H__
  7. #include <linux/types.h>
  8. #include <linux/v4l2-controls.h>
  9. /* vendor color format start */
  10. /* UBWC 8-bit Y/CbCr 4:2:0 */
  11. #define V4L2_PIX_FMT_NV12_UBWC v4l2_fourcc('Q', '1', '2', '8')
  12. /* NV12_512 8-bit Y/CbCr 4:2:0 */
  13. #define V4L2_PIX_FMT_NV12_512 v4l2_fourcc('Q', '5', '1', '2')
  14. /* NV12 10-bit Y/CbCr 4:2:0 */
  15. #define V4L2_PIX_FMT_NV12_P010_UBWC v4l2_fourcc('Q', '1', '2', 'B')
  16. /* UBWC 10-bit Y/CbCr 4:2:0 */
  17. #define V4L2_PIX_FMT_NV12_TP10_UBWC v4l2_fourcc('Q', '1', '2', 'A')
  18. #define V4L2_PIX_FMT_RGBA8888_UBWC v4l2_fourcc('Q', 'R', 'G', 'B')
  19. /* Y/CbCr 4:2:0 P10 Venus */
  20. #define V4L2_PIX_FMT_SDE_Y_CBCR_H2V2_P010_VENUS v4l2_fourcc('Q', 'P', '1', '0')
  21. #define V4L2_PIX_FMT_VIDC_META v4l2_fourcc('Q', 'M', 'E', 'T')
  22. /* vendor color format end */
  23. /* vendor controls start */
  24. #define V4L2_CID_MPEG_MSM_VIDC_BASE (V4L2_CTRL_CLASS_MPEG | 0x2000)
  25. #define V4L2_CID_MPEG_VIDC_VIDEO_DECODE_ORDER \
  26. (V4L2_CID_MPEG_MSM_VIDC_BASE + 0x1)
  27. #define V4L2_CID_MPEG_VIDC_VIDEO_SYNC_FRAME_DECODE \
  28. (V4L2_CID_MPEG_MSM_VIDC_BASE + 0x2)
  29. #define V4L2_CID_MPEG_VIDC_VIDEO_SECURE \
  30. (V4L2_CID_MPEG_MSM_VIDC_BASE + 0x3)
  31. #define V4L2_CID_MPEG_VIDC_VIDEO_LOWLATENCY_MODE \
  32. (V4L2_CID_MPEG_MSM_VIDC_BASE + 0x4)
  33. #define V4L2_CID_MPEG_VIDC_VIDEO_LOWLATENCY_HINT \
  34. (V4L2_CID_MPEG_MSM_VIDC_BASE + 0x5)
  35. #define V4L2_CID_MPEG_VIDC_VIDEO_BUFFER_SIZE_LIMIT \
  36. (V4L2_CID_MPEG_MSM_VIDC_BASE + 0x6)
  37. /* vendor controls end */
  38. #endif