mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +00:00
V4L/DVB (6217): V4L: Int if: Add BT.656 interface support
This patch adds BT.656 interface settings for [gs]_ifparm. Signed-off-by: Sakari Ailus <sakari.ailus@nokia.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
This commit is contained in:
parent
098c645e39
commit
08256ea0da
1 changed files with 50 additions and 0 deletions
|
@ -99,11 +99,61 @@ int v4l2_int_ioctl_1(struct v4l2_int_device *d, int cmd, void *arg);
|
||||||
|
|
||||||
/* Slave interface type. */
|
/* Slave interface type. */
|
||||||
enum v4l2_if_type {
|
enum v4l2_if_type {
|
||||||
|
/*
|
||||||
|
* Parallel 8-, 10- or 12-bit interface, used by for example
|
||||||
|
* on certain image sensors.
|
||||||
|
*/
|
||||||
|
V4L2_IF_TYPE_BT656,
|
||||||
|
};
|
||||||
|
|
||||||
|
enum v4l2_if_type_bt656_mode {
|
||||||
|
/*
|
||||||
|
* Modes without Bt synchronisation codes. Separate
|
||||||
|
* synchronisation signal lines are used.
|
||||||
|
*/
|
||||||
|
V4L2_IF_TYPE_BT656_MODE_NOBT_8BIT,
|
||||||
|
V4L2_IF_TYPE_BT656_MODE_NOBT_10BIT,
|
||||||
|
V4L2_IF_TYPE_BT656_MODE_NOBT_12BIT,
|
||||||
|
/*
|
||||||
|
* Use Bt synchronisation codes. The vertical and horizontal
|
||||||
|
* synchronisation is done based on synchronisation codes.
|
||||||
|
*/
|
||||||
|
V4L2_IF_TYPE_BT656_MODE_BT_8BIT,
|
||||||
|
V4L2_IF_TYPE_BT656_MODE_BT_10BIT,
|
||||||
|
};
|
||||||
|
|
||||||
|
struct v4l2_if_type_bt656 {
|
||||||
|
/*
|
||||||
|
* 0: Frame begins when vsync is high.
|
||||||
|
* 1: Frame begins when vsync changes from low to high.
|
||||||
|
*/
|
||||||
|
unsigned frame_start_on_rising_vs:1;
|
||||||
|
/* Use Bt synchronisation codes for sync correction. */
|
||||||
|
unsigned bt_sync_correct:1;
|
||||||
|
/* Swap every two adjacent image data elements. */
|
||||||
|
unsigned swap:1;
|
||||||
|
/* Inverted latch clock polarity from slave. */
|
||||||
|
unsigned latch_clk_inv:1;
|
||||||
|
/* Hs polarity. 0 is active high, 1 active low. */
|
||||||
|
unsigned nobt_hs_inv:1;
|
||||||
|
/* Vs polarity. 0 is active high, 1 active low. */
|
||||||
|
unsigned nobt_vs_inv:1;
|
||||||
|
enum v4l2_if_type_bt656_mode mode;
|
||||||
|
/* Minimum accepted bus clock for slave (in Hz). */
|
||||||
|
u32 clock_min;
|
||||||
|
/* Maximum accepted bus clock for slave. */
|
||||||
|
u32 clock_max;
|
||||||
|
/*
|
||||||
|
* Current wish of the slave. May only change in response to
|
||||||
|
* ioctls that affect image capture.
|
||||||
|
*/
|
||||||
|
u32 clock_curr;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct v4l2_ifparm {
|
struct v4l2_ifparm {
|
||||||
enum v4l2_if_type if_type;
|
enum v4l2_if_type if_type;
|
||||||
union {
|
union {
|
||||||
|
struct v4l2_if_type_bt656 bt656;
|
||||||
} u;
|
} u;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue