[media] v4l2: Add polarity flag definitions for the parallel bus FIELD signal
authorSylwester Nawrocki <s.nawrocki@samsung.com>
Mon, 19 Sep 2011 15:58:54 +0000 (12:58 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Sat, 24 Sep 2011 03:21:31 +0000 (00:21 -0300)
FIELD signal is used for indicating frame field type to the frame grabber
in interlaced scan mode, as specified in ITU-R BT.601 standard.
In normal operation mode FIELD = 0 selects Field1 (odd) and FIELD = 1
selects Field2 (even). When the FIELD signal is inverted it's the other
way around.

Add corresponding flags for configuring the FIELD signal polarity,
V4L2_MBUS_FIELD_EVEN_HIGH for the standard (non-inverted) case and
V4L2_MBUS_FIELD_EVEN_LOW for inverted case.

Also add a comment about usage of V4L2_MBUS_[HV]SYNC* flags for
the hardware that uses [HV]REF signals.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
include/media/v4l2-mediabus.h

index 6114007c8c744d053dd328a883f378e19bfd9681..83ae07e533507cd86546b0741dc34fa93cacf604 100644 (file)
  */
 #define V4L2_MBUS_MASTER                       (1 << 0)
 #define V4L2_MBUS_SLAVE                                (1 << 1)
-/* Which signal polarities it supports */
-/* Note: in BT.656 mode HSYNC and VSYNC are unused */
+/*
+ * Signal polarity flags
+ * Note: in BT.656 mode HSYNC, FIELD, and VSYNC are unused
+ * V4L2_MBUS_[HV]SYNC* flags should be also used for specifying
+ * configuration of hardware that uses [HV]REF signals
+ */
 #define V4L2_MBUS_HSYNC_ACTIVE_HIGH            (1 << 2)
 #define V4L2_MBUS_HSYNC_ACTIVE_LOW             (1 << 3)
 #define V4L2_MBUS_VSYNC_ACTIVE_HIGH            (1 << 4)
 #define V4L2_MBUS_PCLK_SAMPLE_FALLING          (1 << 7)
 #define V4L2_MBUS_DATA_ACTIVE_HIGH             (1 << 8)
 #define V4L2_MBUS_DATA_ACTIVE_LOW              (1 << 9)
+/* FIELD = 0/1 - Field1 (odd)/Field2 (even) */
+#define V4L2_MBUS_FIELD_EVEN_HIGH              (1 << 10)
+/* FIELD = 1/0 - Field1 (odd)/Field2 (even) */
+#define V4L2_MBUS_FIELD_EVEN_LOW               (1 << 11)
 
 /* Serial flags */
 /* How many lanes the client can use */