[PATCH v2] V4L2 SDR: Add Real U8 format (V4L2_SDR_FMT_RU8)

2017-04-24 Thread Bertold Van den Bergh
This patch adds support for the Real U8 format to the V4L2 SDR framework.

Signed-off-by: Bertold Van den Bergh <vandenbe...@bertold.org>
---
Thanks for your comments. I was not aware of the V4L format documentation.
I don't think there is a clear natural ordering for these types of formats,
but I agree it looks more consistent in this way.

Changes in v2:
  - Added documentation files
  - Changed order of formats

 Documentation/media/uapi/v4l/pixfmt-sdr-ru08.rst | 17 +
 Documentation/media/uapi/v4l/sdr-formats.rst |  1 +
 drivers/media/v4l2-core/v4l2-ioctl.c |  1 +
 include/uapi/linux/videodev2.h   |  1 +
 4 files changed, 20 insertions(+)
 create mode 100644 Documentation/media/uapi/v4l/pixfmt-sdr-ru08.rst

diff --git a/Documentation/media/uapi/v4l/pixfmt-sdr-ru08.rst 
b/Documentation/media/uapi/v4l/pixfmt-sdr-ru08.rst
new file mode 100644
index 000..ddd56e1
--- /dev/null
+++ b/Documentation/media/uapi/v4l/pixfmt-sdr-ru08.rst
@@ -0,0 +1,17 @@
+.. -*- coding: utf-8; mode: rst -*-
+
+.. _V4L2-SDR-FMT-RU8:
+
+
+V4L2_SDR_FMT_RU8 ('RU08')
+
+
+
+Real unsigned 8-bit sample
+
+
+Description
+===
+
+This format contains a sequence of real number samples. Each sample is
+represented as a 8 bit unsigned number.
diff --git a/Documentation/media/uapi/v4l/sdr-formats.rst 
b/Documentation/media/uapi/v4l/sdr-formats.rst
index f863c08..a08b5c2 100644
--- a/Documentation/media/uapi/v4l/sdr-formats.rst
+++ b/Documentation/media/uapi/v4l/sdr-formats.rst
@@ -16,4 +16,5 @@ These formats are used for :ref:`SDR ` interface only.
 pixfmt-sdr-cu16le
 pixfmt-sdr-cs08
 pixfmt-sdr-cs14le
+pixfmt-sdr-ru08
 pixfmt-sdr-ru12le
diff --git a/drivers/media/v4l2-core/v4l2-ioctl.c 
b/drivers/media/v4l2-core/v4l2-ioctl.c
index e5a2187..79140cc 100644
--- a/drivers/media/v4l2-core/v4l2-ioctl.c
+++ b/drivers/media/v4l2-core/v4l2-ioctl.c
@@ -1228,6 +1228,7 @@ static void v4l_fill_fmtdesc(struct v4l2_fmtdesc *fmt)
case V4L2_SDR_FMT_CU16LE:   descr = "Complex U16LE"; break;
case V4L2_SDR_FMT_CS8:  descr = "Complex S8"; break;
case V4L2_SDR_FMT_CS14LE:   descr = "Complex S14LE"; break;
+   case V4L2_SDR_FMT_RU8:  descr = "Real U8"; break;
case V4L2_SDR_FMT_RU12LE:   descr = "Real U12LE"; break;
case V4L2_TCH_FMT_DELTA_TD16:   descr = "16-bit signed deltas"; break;
case V4L2_TCH_FMT_DELTA_TD08:   descr = "8-bit signed deltas"; break;
diff --git a/include/uapi/linux/videodev2.h b/include/uapi/linux/videodev2.h
index 2b8feb8..21e9ae3 100644
--- a/include/uapi/linux/videodev2.h
+++ b/include/uapi/linux/videodev2.h
@@ -668,6 +668,7 @@ struct v4l2_pix_format {
 #define V4L2_SDR_FMT_CU16LE   v4l2_fourcc('C', 'U', '1', '6') /* IQ u16le 
*/
 #define V4L2_SDR_FMT_CS8  v4l2_fourcc('C', 'S', '0', '8') /* complex 
s8 */
 #define V4L2_SDR_FMT_CS14LE   v4l2_fourcc('C', 'S', '1', '4') /* complex 
s14le */
+#define V4L2_SDR_FMT_RU8  v4l2_fourcc('R', 'U', '0', '8') /* real u8 */
 #define V4L2_SDR_FMT_RU12LE   v4l2_fourcc('R', 'U', '1', '2') /* real 
u12le */
 
 /* Touch formats - used for Touch devices */
-- 
1.9.1



[PATCH] V4L2 SDR: Add Real U8 format (V4L2_SDR_FMT_RU8)

2017-04-23 Thread Bertold Van den Bergh
This patch adds support for the Real U8 format to the V4L2 SDR framework.
This will be used for a piece of hardware we are developing.

Signed-off-by: Bertold Van den Bergh <vandenbe...@bertold.org>
---
 drivers/media/v4l2-core/v4l2-ioctl.c | 1 +
 include/uapi/linux/videodev2.h   | 1 +
 2 files changed, 2 insertions(+)

diff --git a/drivers/media/v4l2-core/v4l2-ioctl.c 
b/drivers/media/v4l2-core/v4l2-ioctl.c
index e5a2187..8b6e097 100644
--- a/drivers/media/v4l2-core/v4l2-ioctl.c
+++ b/drivers/media/v4l2-core/v4l2-ioctl.c
@@ -1229,6 +1229,7 @@ static void v4l_fill_fmtdesc(struct v4l2_fmtdesc *fmt)
case V4L2_SDR_FMT_CS8:  descr = "Complex S8"; break;
case V4L2_SDR_FMT_CS14LE:   descr = "Complex S14LE"; break;
case V4L2_SDR_FMT_RU12LE:   descr = "Real U12LE"; break;
+   case V4L2_SDR_FMT_RU8:  descr = "Real U8"; break;
case V4L2_TCH_FMT_DELTA_TD16:   descr = "16-bit signed deltas"; break;
case V4L2_TCH_FMT_DELTA_TD08:   descr = "8-bit signed deltas"; break;
case V4L2_TCH_FMT_TU16: descr = "16-bit unsigned touch data"; 
break;
diff --git a/include/uapi/linux/videodev2.h b/include/uapi/linux/videodev2.h
index 2b8feb8..50c3ef4 100644
--- a/include/uapi/linux/videodev2.h
+++ b/include/uapi/linux/videodev2.h
@@ -669,6 +669,7 @@ struct v4l2_pix_format {
 #define V4L2_SDR_FMT_CS8  v4l2_fourcc('C', 'S', '0', '8') /* complex 
s8 */
 #define V4L2_SDR_FMT_CS14LE   v4l2_fourcc('C', 'S', '1', '4') /* complex 
s14le */
 #define V4L2_SDR_FMT_RU12LE   v4l2_fourcc('R', 'U', '1', '2') /* real 
u12le */
+#define V4L2_SDR_FMT_RU8  v4l2_fourcc('R', 'U', '0', '8') /* real u8 */
 
 /* Touch formats - used for Touch devices */
 #define V4L2_TCH_FMT_DELTA_TD16v4l2_fourcc('T', 'D', '1', '6') /* 
16-bit signed deltas */
-- 
1.9.1