RE: [PATCH v3 5/7] doc_rst: media: New SDR formats PC16, PC18 & PC20

2017-04-18 Thread Ramesh Shanmugasundaram
Hi Laurent,

Thanks for the review comments.

> On Tuesday 07 Feb 2017 15:02:35 Ramesh Shanmugasundaram wrote:
> > This patch adds documentation for the three new SDR formats
> >
> > V4L2_SDR_FMT_PCU16BE
> > V4L2_SDR_FMT_PCU18BE
> > V4L2_SDR_FMT_PCU20BE
> >
> > Signed-off-by: Ramesh Shanmugasundaram
> >  ---
> >  .../media/uapi/v4l/pixfmt-sdr-pcu16be.rst  | 55
> +++
> >  .../media/uapi/v4l/pixfmt-sdr-pcu18be.rst  | 55
> +++
> >  .../media/uapi/v4l/pixfmt-sdr-pcu20be.rst  | 54
> +++
> >  Documentation/media/uapi/v4l/sdr-formats.rst   |  3 ++
> >  4 files changed, 167 insertions(+)
> >  create mode 100644
> > Documentation/media/uapi/v4l/pixfmt-sdr-pcu16be.rst
> >  create mode 100644
> > Documentation/media/uapi/v4l/pixfmt-sdr-pcu18be.rst
> >  create mode 100644
> > Documentation/media/uapi/v4l/pixfmt-sdr-pcu20be.rst
> >
> > diff --git a/Documentation/media/uapi/v4l/pixfmt-sdr-pcu16be.rst
> > b/Documentation/media/uapi/v4l/pixfmt-sdr-pcu16be.rst new file mode
> > 100644 index 000..2de1b1a
> > --- /dev/null
> > +++ b/Documentation/media/uapi/v4l/pixfmt-sdr-pcu16be.rst
> > @@ -0,0 +1,55 @@
> > +.. -*- coding: utf-8; mode: rst -*-
> > +
> > +.. _V4L2-SDR-FMT-PCU16BE:
> > +
> > +**
> > +V4L2_SDR_FMT_PCU16BE ('PC16')
> > +**
> > +
> > +Planar complex unsigned 16-bit big endian IQ sample
> > +
> > +Description
> > +===
> > +
> > +This format contains a sequence of complex number samples. Each
> > +complex number consist of two parts called In-phase and Quadrature
> > +(IQ). Both I and Q are represented as a 16 bit unsigned big endian
> > +number stored in
> > +32 bit space. The remaining unused bits within the 32 bit space will
> > +be padded with 0. I value starts first and Q value starts at an
> > +offset equalling half of the buffer size (i.e.) offset =
> > +buffersize/2. Out of the 16 bits, bit 15:2 (14 bit) is data and bit
> > +1:0 (2 bit) can be any value.
> 
> This sounds very strange to me. Are the two lower bits always random ?
> What is that used for ?

It could be zeros or it could be status bits in case of MAX2175 (if enabled). I 
mentioned any value because the user app does not have any assumptions on these 
bits value.
 
> 
> > +**Byte Order.**
> > +Each cell is one byte.
> > +
> > +.. flat-table::
> > +:header-rows:  1
> > +:stub-columns: 0
> > +
> > +* -  Offset:
> > +  -  Byte B0
> > +  -  Byte B1
> > +  -  Byte B2
> > +  -  Byte B3
> > +* -  start + 0:
> > +  -  I'\ :sub:`0[13:6]`
> > +  -  I'\ :sub:`0[5:0]; B1[1:0]=pad`
> > +  -  pad
> > +  -  pad
> > +* -  start + 4:
> > +  -  I'\ :sub:`1[13:6]`
> > +  -  I'\ :sub:`1[5:0]; B1[1:0]=pad`
> > +  -  pad
> > +  -  pad
> > +* -  ...
> > +* - start + offset:
> > +  -  Q'\ :sub:`0[13:6]`
> > +  -  Q'\ :sub:`0[5:0]; B1[1:0]=pad`
> > +  -  pad
> > +  -  pad
> > +* - start + offset + 4:
> > +  -  Q'\ :sub:`1[13:6]`
> > +  -  Q'\ :sub:`1[5:0]; B1[1:0]=pad`
> > +  -  pad
> > +  -  pad
> > diff --git a/Documentation/media/uapi/v4l/pixfmt-sdr-pcu18be.rst
> > b/Documentation/media/uapi/v4l/pixfmt-sdr-pcu18be.rst new file mode
> > 100644 index 000..da8b26b
> > --- /dev/null
> > +++ b/Documentation/media/uapi/v4l/pixfmt-sdr-pcu18be.rst
> > @@ -0,0 +1,55 @@
> > +.. -*- coding: utf-8; mode: rst -*-
> > +
> > +.. _V4L2-SDR-FMT-PCU18BE:
> > +
> > +**
> > +V4L2_SDR_FMT_PCU18BE ('PC18')
> > +**
> > +
> > +Planar complex unsigned 18-bit big endian IQ sample
> > +
> > +Description
> > +===
> > +
> > +This format contains a sequence of complex number samples. Each
> > +complex number consist of two parts called In-phase and Quadrature
> > +(IQ). Both I and Q are represented as a 18 bit unsigned big endian
> > +number stored in
> > +32 bit space. The remaining unused bits within the 32 bit space will
> > +be padded with 0. I value starts first and Q value starts at an
> > +offset equalling half of the buffer size (i.e.) offset =
> > +buffersize/2. Out of the 18 bits, bit 17:2 (16 bit) is data and bit
> > +1:0 (2 bit) can be any value.
> > +
> > +**Byte Order.**
> > +Each cell is one byte.
> > +
> > +.. flat-table::
> > +:header-rows:  1
> > +:stub-columns: 0
> > +
> > +* -  Offset:
> > +  -  Byte B0
> > +  -  Byte B1
> > +  -  Byte B2
> > +  -  Byte B3
> > +* -  start + 0:
> > +  -  I'\ :sub:`0[17:10]`
> > +  -  I'\ :sub:`0[9:2]`
> > +  -  I'\ :sub:`0[1:0]; B2[5:0]=pad`
> > +  -  pad
> > +* -  start + 4:
> > +  -  I'\ :sub:`1[17:10]`
> > +  -  I'\ :sub:`1[9:2]`
> > +  -  I'\ :sub:`1[1:0]; B2[5:0]=pad`
> > +  -  pad
> > +* -  ...
> > +* - start + offset:
> > +  -  Q'\ :sub:`0[17:10]`
> > +  -  Q'\ :sub:`0[9:2]`
> > +  -  Q'\ :sub:`0[1:0]; B2[5:0]=pad`
> > +  -  pa

Re: [PATCH v3 5/7] doc_rst: media: New SDR formats PC16, PC18 & PC20

2017-04-11 Thread Laurent Pinchart
Hi Ramesh,

Thank you for the patch.

On Tuesday 07 Feb 2017 15:02:35 Ramesh Shanmugasundaram wrote:
> This patch adds documentation for the three new SDR formats
> 
> V4L2_SDR_FMT_PCU16BE
> V4L2_SDR_FMT_PCU18BE
> V4L2_SDR_FMT_PCU20BE
> 
> Signed-off-by: Ramesh Shanmugasundaram
>  ---
>  .../media/uapi/v4l/pixfmt-sdr-pcu16be.rst  | 55 +++
>  .../media/uapi/v4l/pixfmt-sdr-pcu18be.rst  | 55 +++
>  .../media/uapi/v4l/pixfmt-sdr-pcu20be.rst  | 54 +++
>  Documentation/media/uapi/v4l/sdr-formats.rst   |  3 ++
>  4 files changed, 167 insertions(+)
>  create mode 100644 Documentation/media/uapi/v4l/pixfmt-sdr-pcu16be.rst
>  create mode 100644 Documentation/media/uapi/v4l/pixfmt-sdr-pcu18be.rst
>  create mode 100644 Documentation/media/uapi/v4l/pixfmt-sdr-pcu20be.rst
> 
> diff --git a/Documentation/media/uapi/v4l/pixfmt-sdr-pcu16be.rst
> b/Documentation/media/uapi/v4l/pixfmt-sdr-pcu16be.rst new file mode 100644
> index 000..2de1b1a
> --- /dev/null
> +++ b/Documentation/media/uapi/v4l/pixfmt-sdr-pcu16be.rst
> @@ -0,0 +1,55 @@
> +.. -*- coding: utf-8; mode: rst -*-
> +
> +.. _V4L2-SDR-FMT-PCU16BE:
> +
> +**
> +V4L2_SDR_FMT_PCU16BE ('PC16')
> +**
> +
> +Planar complex unsigned 16-bit big endian IQ sample
> +
> +Description
> +===
> +
> +This format contains a sequence of complex number samples. Each complex
> +number consist of two parts called In-phase and Quadrature (IQ). Both I
> +and Q are represented as a 16 bit unsigned big endian number stored in
> +32 bit space. The remaining unused bits within the 32 bit space will be
> +padded with 0. I value starts first and Q value starts at an offset
> +equalling half of the buffer size (i.e.) offset = buffersize/2. Out of
> +the 16 bits, bit 15:2 (14 bit) is data and bit 1:0 (2 bit) can be any
> +value.

This sounds very strange to me. Are the two lower bits always random ? What is 
that used for ?

> +**Byte Order.**
> +Each cell is one byte.
> +
> +.. flat-table::
> +:header-rows:  1
> +:stub-columns: 0
> +
> +* -  Offset:
> +  -  Byte B0
> +  -  Byte B1
> +  -  Byte B2
> +  -  Byte B3
> +* -  start + 0:
> +  -  I'\ :sub:`0[13:6]`
> +  -  I'\ :sub:`0[5:0]; B1[1:0]=pad`
> +  -  pad
> +  -  pad
> +* -  start + 4:
> +  -  I'\ :sub:`1[13:6]`
> +  -  I'\ :sub:`1[5:0]; B1[1:0]=pad`
> +  -  pad
> +  -  pad
> +* -  ...
> +* - start + offset:
> +  -  Q'\ :sub:`0[13:6]`
> +  -  Q'\ :sub:`0[5:0]; B1[1:0]=pad`
> +  -  pad
> +  -  pad
> +* - start + offset + 4:
> +  -  Q'\ :sub:`1[13:6]`
> +  -  Q'\ :sub:`1[5:0]; B1[1:0]=pad`
> +  -  pad
> +  -  pad
> diff --git a/Documentation/media/uapi/v4l/pixfmt-sdr-pcu18be.rst
> b/Documentation/media/uapi/v4l/pixfmt-sdr-pcu18be.rst new file mode 100644
> index 000..da8b26b
> --- /dev/null
> +++ b/Documentation/media/uapi/v4l/pixfmt-sdr-pcu18be.rst
> @@ -0,0 +1,55 @@
> +.. -*- coding: utf-8; mode: rst -*-
> +
> +.. _V4L2-SDR-FMT-PCU18BE:
> +
> +**
> +V4L2_SDR_FMT_PCU18BE ('PC18')
> +**
> +
> +Planar complex unsigned 18-bit big endian IQ sample
> +
> +Description
> +===
> +
> +This format contains a sequence of complex number samples. Each complex
> +number consist of two parts called In-phase and Quadrature (IQ). Both I
> +and Q are represented as a 18 bit unsigned big endian number stored in
> +32 bit space. The remaining unused bits within the 32 bit space will be
> +padded with 0. I value starts first and Q value starts at an offset
> +equalling half of the buffer size (i.e.) offset = buffersize/2. Out of
> +the 18 bits, bit 17:2 (16 bit) is data and bit 1:0 (2 bit) can be any
> +value.
> +
> +**Byte Order.**
> +Each cell is one byte.
> +
> +.. flat-table::
> +:header-rows:  1
> +:stub-columns: 0
> +
> +* -  Offset:
> +  -  Byte B0
> +  -  Byte B1
> +  -  Byte B2
> +  -  Byte B3
> +* -  start + 0:
> +  -  I'\ :sub:`0[17:10]`
> +  -  I'\ :sub:`0[9:2]`
> +  -  I'\ :sub:`0[1:0]; B2[5:0]=pad`
> +  -  pad
> +* -  start + 4:
> +  -  I'\ :sub:`1[17:10]`
> +  -  I'\ :sub:`1[9:2]`
> +  -  I'\ :sub:`1[1:0]; B2[5:0]=pad`
> +  -  pad
> +* -  ...
> +* - start + offset:
> +  -  Q'\ :sub:`0[17:10]`
> +  -  Q'\ :sub:`0[9:2]`
> +  -  Q'\ :sub:`0[1:0]; B2[5:0]=pad`
> +  -  pad
> +* - start + offset + 4:
> +  -  Q'\ :sub:`1[17:10]`
> +  -  Q'\ :sub:`1[9:2]`
> +  -  Q'\ :sub:`1[1:0]; B2[5:0]=pad`
> +  -  pad
> diff --git a/Documentation/media/uapi/v4l/pixfmt-sdr-pcu20be.rst
> b/Documentation/media/uapi/v4l/pixfmt-sdr-pcu20be.rst new file mode 100644
> index 000..5499eed
> --- /dev/null
> +++ b/Documentation/media/uapi/v4l/pixfmt-sdr-pcu20be.rst
> @@ -0,0 +1,54 @@
> +.. -*- coding: utf-8; mode: rst -*-
> +.. _V4L2-SDR-FMT-PCU20BE:

[PATCH v3 5/7] doc_rst: media: New SDR formats PC16, PC18 & PC20

2017-02-07 Thread Ramesh Shanmugasundaram
This patch adds documentation for the three new SDR formats

V4L2_SDR_FMT_PCU16BE
V4L2_SDR_FMT_PCU18BE
V4L2_SDR_FMT_PCU20BE

Signed-off-by: Ramesh Shanmugasundaram 
---
 .../media/uapi/v4l/pixfmt-sdr-pcu16be.rst  | 55 ++
 .../media/uapi/v4l/pixfmt-sdr-pcu18be.rst  | 55 ++
 .../media/uapi/v4l/pixfmt-sdr-pcu20be.rst  | 54 +
 Documentation/media/uapi/v4l/sdr-formats.rst   |  3 ++
 4 files changed, 167 insertions(+)
 create mode 100644 Documentation/media/uapi/v4l/pixfmt-sdr-pcu16be.rst
 create mode 100644 Documentation/media/uapi/v4l/pixfmt-sdr-pcu18be.rst
 create mode 100644 Documentation/media/uapi/v4l/pixfmt-sdr-pcu20be.rst

diff --git a/Documentation/media/uapi/v4l/pixfmt-sdr-pcu16be.rst 
b/Documentation/media/uapi/v4l/pixfmt-sdr-pcu16be.rst
new file mode 100644
index 000..2de1b1a
--- /dev/null
+++ b/Documentation/media/uapi/v4l/pixfmt-sdr-pcu16be.rst
@@ -0,0 +1,55 @@
+.. -*- coding: utf-8; mode: rst -*-
+
+.. _V4L2-SDR-FMT-PCU16BE:
+
+**
+V4L2_SDR_FMT_PCU16BE ('PC16')
+**
+
+Planar complex unsigned 16-bit big endian IQ sample
+
+Description
+===
+
+This format contains a sequence of complex number samples. Each complex
+number consist of two parts called In-phase and Quadrature (IQ). Both I
+and Q are represented as a 16 bit unsigned big endian number stored in
+32 bit space. The remaining unused bits within the 32 bit space will be
+padded with 0. I value starts first and Q value starts at an offset
+equalling half of the buffer size (i.e.) offset = buffersize/2. Out of
+the 16 bits, bit 15:2 (14 bit) is data and bit 1:0 (2 bit) can be any
+value.
+
+**Byte Order.**
+Each cell is one byte.
+
+.. flat-table::
+:header-rows:  1
+:stub-columns: 0
+
+* -  Offset:
+  -  Byte B0
+  -  Byte B1
+  -  Byte B2
+  -  Byte B3
+* -  start + 0:
+  -  I'\ :sub:`0[13:6]`
+  -  I'\ :sub:`0[5:0]; B1[1:0]=pad`
+  -  pad
+  -  pad
+* -  start + 4:
+  -  I'\ :sub:`1[13:6]`
+  -  I'\ :sub:`1[5:0]; B1[1:0]=pad`
+  -  pad
+  -  pad
+* -  ...
+* - start + offset:
+  -  Q'\ :sub:`0[13:6]`
+  -  Q'\ :sub:`0[5:0]; B1[1:0]=pad`
+  -  pad
+  -  pad
+* - start + offset + 4:
+  -  Q'\ :sub:`1[13:6]`
+  -  Q'\ :sub:`1[5:0]; B1[1:0]=pad`
+  -  pad
+  -  pad
diff --git a/Documentation/media/uapi/v4l/pixfmt-sdr-pcu18be.rst 
b/Documentation/media/uapi/v4l/pixfmt-sdr-pcu18be.rst
new file mode 100644
index 000..da8b26b
--- /dev/null
+++ b/Documentation/media/uapi/v4l/pixfmt-sdr-pcu18be.rst
@@ -0,0 +1,55 @@
+.. -*- coding: utf-8; mode: rst -*-
+
+.. _V4L2-SDR-FMT-PCU18BE:
+
+**
+V4L2_SDR_FMT_PCU18BE ('PC18')
+**
+
+Planar complex unsigned 18-bit big endian IQ sample
+
+Description
+===
+
+This format contains a sequence of complex number samples. Each complex
+number consist of two parts called In-phase and Quadrature (IQ). Both I
+and Q are represented as a 18 bit unsigned big endian number stored in
+32 bit space. The remaining unused bits within the 32 bit space will be
+padded with 0. I value starts first and Q value starts at an offset
+equalling half of the buffer size (i.e.) offset = buffersize/2. Out of
+the 18 bits, bit 17:2 (16 bit) is data and bit 1:0 (2 bit) can be any
+value.
+
+**Byte Order.**
+Each cell is one byte.
+
+.. flat-table::
+:header-rows:  1
+:stub-columns: 0
+
+* -  Offset:
+  -  Byte B0
+  -  Byte B1
+  -  Byte B2
+  -  Byte B3
+* -  start + 0:
+  -  I'\ :sub:`0[17:10]`
+  -  I'\ :sub:`0[9:2]`
+  -  I'\ :sub:`0[1:0]; B2[5:0]=pad`
+  -  pad
+* -  start + 4:
+  -  I'\ :sub:`1[17:10]`
+  -  I'\ :sub:`1[9:2]`
+  -  I'\ :sub:`1[1:0]; B2[5:0]=pad`
+  -  pad
+* -  ...
+* - start + offset:
+  -  Q'\ :sub:`0[17:10]`
+  -  Q'\ :sub:`0[9:2]`
+  -  Q'\ :sub:`0[1:0]; B2[5:0]=pad`
+  -  pad
+* - start + offset + 4:
+  -  Q'\ :sub:`1[17:10]`
+  -  Q'\ :sub:`1[9:2]`
+  -  Q'\ :sub:`1[1:0]; B2[5:0]=pad`
+  -  pad
diff --git a/Documentation/media/uapi/v4l/pixfmt-sdr-pcu20be.rst 
b/Documentation/media/uapi/v4l/pixfmt-sdr-pcu20be.rst
new file mode 100644
index 000..5499eed
--- /dev/null
+++ b/Documentation/media/uapi/v4l/pixfmt-sdr-pcu20be.rst
@@ -0,0 +1,54 @@
+.. -*- coding: utf-8; mode: rst -*-
+.. _V4L2-SDR-FMT-PCU20BE:
+
+**
+V4L2_SDR_FMT_PCU20BE ('PC20')
+**
+
+Planar complex unsigned 20-bit big endian IQ sample
+
+Description
+===
+
+This format contains a sequence of complex number samples. Each complex
+number consist of two parts called In-phase and Quadrature (IQ). Both I
+and Q are represented as a 20 bit unsigned big endian number stored in
+32 bit space. The remaining unused bits within the 32 bit space will be
+pad