| .. | .. |
|---|
| 16 | 16 | #include <linux/types.h> |
|---|
| 17 | 17 | #include <linux/videodev2.h> |
|---|
| 18 | 18 | |
|---|
| 19 | +#define V4L2_MBUS_FRAMEFMT_SET_CSC 0x0001 |
|---|
| 20 | + |
|---|
| 19 | 21 | /** |
|---|
| 20 | 22 | * struct v4l2_mbus_framefmt - frame format on the media bus |
|---|
| 21 | 23 | * @width: image width |
|---|
| .. | .. |
|---|
| 24 | 26 | * @field: used interlacing type (from enum v4l2_field) |
|---|
| 25 | 27 | * @colorspace: colorspace of the data (from enum v4l2_colorspace) |
|---|
| 26 | 28 | * @ycbcr_enc: YCbCr encoding of the data (from enum v4l2_ycbcr_encoding) |
|---|
| 29 | + * @hsv_enc: HSV encoding of the data (from enum v4l2_hsv_encoding) |
|---|
| 27 | 30 | * @quantization: quantization of the data (from enum v4l2_quantization) |
|---|
| 28 | 31 | * @xfer_func: transfer function of the data (from enum v4l2_xfer_func) |
|---|
| 32 | + * @flags: flags (V4L2_MBUS_FRAMEFMT_*) |
|---|
| 33 | + * @reserved: reserved bytes that can be later used |
|---|
| 29 | 34 | */ |
|---|
| 30 | 35 | struct v4l2_mbus_framefmt { |
|---|
| 31 | 36 | __u32 width; |
|---|
| .. | .. |
|---|
| 33 | 38 | __u32 code; |
|---|
| 34 | 39 | __u32 field; |
|---|
| 35 | 40 | __u32 colorspace; |
|---|
| 36 | | - __u16 ycbcr_enc; |
|---|
| 41 | + union { |
|---|
| 42 | + /* enum v4l2_ycbcr_encoding */ |
|---|
| 43 | + __u16 ycbcr_enc; |
|---|
| 44 | + /* enum v4l2_hsv_encoding */ |
|---|
| 45 | + __u16 hsv_enc; |
|---|
| 46 | + }; |
|---|
| 37 | 47 | __u16 quantization; |
|---|
| 38 | 48 | __u16 xfer_func; |
|---|
| 39 | | - __u16 reserved[11]; |
|---|
| 49 | + __u16 flags; |
|---|
| 50 | + __u16 reserved[10]; |
|---|
| 40 | 51 | }; |
|---|
| 41 | 52 | |
|---|
| 42 | 53 | #ifndef __KERNEL__ |
|---|