950-0869-V4L2-Add-PiSP-compressed-formats-to-V4L2.patch 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. From 01f31f4145d49a30eb553c65ea755dde8dba1de0 Mon Sep 17 00:00:00 2001
  2. From: Naushir Patuck <[email protected]>
  3. Date: Wed, 2 Mar 2022 16:10:50 +0000
  4. Subject: [PATCH] V4L2: Add PiSP compressed formats to V4L2
  5. Signed-off-by: Naushir Patuck <[email protected]>
  6. ---
  7. drivers/media/v4l2-core/v4l2-ioctl.c | 4 ++++
  8. include/uapi/linux/videodev2.h | 6 +++++-
  9. 2 files changed, 9 insertions(+), 1 deletion(-)
  10. --- a/drivers/media/v4l2-core/v4l2-ioctl.c
  11. +++ b/drivers/media/v4l2-core/v4l2-ioctl.c
  12. @@ -1507,6 +1507,10 @@ static void v4l_fill_fmtdesc(struct v4l2
  13. case V4L2_PIX_FMT_QC08C: descr = "QCOM Compressed 8-bit Format"; break;
  14. case V4L2_PIX_FMT_QC10C: descr = "QCOM Compressed 10-bit Format"; break;
  15. case V4L2_PIX_FMT_RPI_BE: descr = "PiSP Opaque Format"; break;
  16. + case V4L2_PIX_FMT_PISP_COMP_RGGB:
  17. + case V4L2_PIX_FMT_PISP_COMP_GRBG:
  18. + case V4L2_PIX_FMT_PISP_COMP_GBRG:
  19. + case V4L2_PIX_FMT_PISP_COMP_BGGR: descr = "PiSP Bayer Compressed Format"; break;
  20. default:
  21. if (fmt->description[0])
  22. return;
  23. --- a/include/uapi/linux/videodev2.h
  24. +++ b/include/uapi/linux/videodev2.h
  25. @@ -794,7 +794,11 @@ struct v4l2_pix_format {
  26. #define V4L2_PIX_FMT_IPU3_SRGGB10 v4l2_fourcc('i', 'p', '3', 'r') /* IPU3 packed 10-bit RGGB bayer */
  27. /* The pixel format for all our buffers (the precise format is found in the config buffer). */
  28. -#define V4L2_PIX_FMT_RPI_BE v4l2_fourcc('R', 'P', 'B', 'P')
  29. +#define V4L2_PIX_FMT_RPI_BE v4l2_fourcc('R', 'P', 'B', 'P')
  30. +#define V4L2_PIX_FMT_PISP_COMP_RGGB v4l2_fourcc('P', 'C', 'R', 'G')
  31. +#define V4L2_PIX_FMT_PISP_COMP_GRBG v4l2_fourcc('P', 'C', 'G', 'R')
  32. +#define V4L2_PIX_FMT_PISP_COMP_GBRG v4l2_fourcc('P', 'C', 'G', 'B')
  33. +#define V4L2_PIX_FMT_PISP_COMP_BGGR v4l2_fourcc('P', 'C', 'B', 'G')
  34. /* SDR formats - used only for Software Defined Radio devices */
  35. #define V4L2_SDR_FMT_CU8 v4l2_fourcc('C', 'U', '0', '8') /* IQ u8 */