media: videodev.h: add PIX_FMT_FWHT for use with vicodec
authorHans Verkuil <hans.verkuil@cisco.com>
Wed, 4 Jul 2018 14:13:47 +0000 (10:13 -0400)
committerMauro Carvalho Chehab <mchehab+samsung@kernel.org>
Wed, 25 Jul 2018 12:09:00 +0000 (08:09 -0400)
Add a new pixelformat for the vicodec software codec using the
Fast Walsh Hadamard Transform.

Signed-off-by: Hans Verkuil <hansverk@cisco.com>
Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
Documentation/media/uapi/v4l/pixfmt-compressed.rst
drivers/media/v4l2-core/v4l2-ioctl.c
include/uapi/linux/videodev2.h

index abec039..d382e7a 100644 (file)
@@ -95,3 +95,10 @@ Compressed Formats
       - ``V4L2_PIX_FMT_HEVC``
       - 'HEVC'
       - HEVC/H.265 video elementary stream.
+    * .. _V4L2-PIX-FMT-FWHT:
+
+      - ``V4L2_PIX_FMT_FWHT``
+      - 'FWHT'
+      - Video elementary stream using a codec based on the Fast Walsh Hadamard
+        Transform. This codec is implemented by the vicodec ('Virtual Codec')
+       driver. See the vicodec-codec.h header for more details.
index 0167056..26d9702 100644 (file)
@@ -1311,6 +1311,7 @@ static void v4l_fill_fmtdesc(struct v4l2_fmtdesc *fmt)
                case V4L2_PIX_FMT_VP8:          descr = "VP8"; break;
                case V4L2_PIX_FMT_VP9:          descr = "VP9"; break;
                case V4L2_PIX_FMT_HEVC:         descr = "HEVC"; break; /* aka H.265 */
+               case V4L2_PIX_FMT_FWHT:         descr = "FWHT"; break; /* used in vicodec */
                case V4L2_PIX_FMT_CPIA1:        descr = "GSPCA CPiA YUV"; break;
                case V4L2_PIX_FMT_WNVA:         descr = "WNVA"; break;
                case V4L2_PIX_FMT_SN9C10X:      descr = "GSPCA SN9C10X"; break;
index 600877b..3ea8097 100644 (file)
@@ -636,6 +636,7 @@ struct v4l2_pix_format {
 #define V4L2_PIX_FMT_VP8      v4l2_fourcc('V', 'P', '8', '0') /* VP8 */
 #define V4L2_PIX_FMT_VP9      v4l2_fourcc('V', 'P', '9', '0') /* VP9 */
 #define V4L2_PIX_FMT_HEVC     v4l2_fourcc('H', 'E', 'V', 'C') /* HEVC aka H.265 */
+#define V4L2_PIX_FMT_FWHT     v4l2_fourcc('F', 'W', 'H', 'T') /* Fast Walsh Hadamard Transform (vicodec) */
 
 /*  Vendor-specific formats   */
 #define V4L2_PIX_FMT_CPIA1    v4l2_fourcc('C', 'P', 'I', 'A') /* cpia1 YUV */