0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012 #ifndef __LINUX_V4L2_MEDIABUS_H
0013 #define __LINUX_V4L2_MEDIABUS_H
0014
0015 #include <linux/media-bus-format.h>
0016 #include <linux/types.h>
0017 #include <linux/videodev2.h>
0018
0019 #define V4L2_MBUS_FRAMEFMT_SET_CSC 0x0001
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033
0034
0035 struct v4l2_mbus_framefmt {
0036 __u32 width;
0037 __u32 height;
0038 __u32 code;
0039 __u32 field;
0040 __u32 colorspace;
0041 union {
0042
0043 __u16 ycbcr_enc;
0044
0045 __u16 hsv_enc;
0046 };
0047 __u16 quantization;
0048 __u16 xfer_func;
0049 __u16 flags;
0050 __u16 reserved[10];
0051 };
0052
0053 #ifndef __KERNEL__
0054
0055
0056
0057
0058
0059
0060
0061
0062
0063 #define V4L2_MBUS_FROM_MEDIA_BUS_FMT(name) \
0064 V4L2_MBUS_FMT_ ## name = MEDIA_BUS_FMT_ ## name
0065
0066 enum v4l2_mbus_pixelcode {
0067 V4L2_MBUS_FROM_MEDIA_BUS_FMT(FIXED),
0068
0069 V4L2_MBUS_FROM_MEDIA_BUS_FMT(RGB444_2X8_PADHI_BE),
0070 V4L2_MBUS_FROM_MEDIA_BUS_FMT(RGB444_2X8_PADHI_LE),
0071 V4L2_MBUS_FROM_MEDIA_BUS_FMT(RGB555_2X8_PADHI_BE),
0072 V4L2_MBUS_FROM_MEDIA_BUS_FMT(RGB555_2X8_PADHI_LE),
0073 V4L2_MBUS_FROM_MEDIA_BUS_FMT(BGR565_2X8_BE),
0074 V4L2_MBUS_FROM_MEDIA_BUS_FMT(BGR565_2X8_LE),
0075 V4L2_MBUS_FROM_MEDIA_BUS_FMT(RGB565_2X8_BE),
0076 V4L2_MBUS_FROM_MEDIA_BUS_FMT(RGB565_2X8_LE),
0077 V4L2_MBUS_FROM_MEDIA_BUS_FMT(RGB666_1X18),
0078 V4L2_MBUS_FROM_MEDIA_BUS_FMT(RGB888_1X24),
0079 V4L2_MBUS_FROM_MEDIA_BUS_FMT(RGB888_2X12_BE),
0080 V4L2_MBUS_FROM_MEDIA_BUS_FMT(RGB888_2X12_LE),
0081 V4L2_MBUS_FROM_MEDIA_BUS_FMT(ARGB8888_1X32),
0082
0083 V4L2_MBUS_FROM_MEDIA_BUS_FMT(Y8_1X8),
0084 V4L2_MBUS_FROM_MEDIA_BUS_FMT(UV8_1X8),
0085 V4L2_MBUS_FROM_MEDIA_BUS_FMT(UYVY8_1_5X8),
0086 V4L2_MBUS_FROM_MEDIA_BUS_FMT(VYUY8_1_5X8),
0087 V4L2_MBUS_FROM_MEDIA_BUS_FMT(YUYV8_1_5X8),
0088 V4L2_MBUS_FROM_MEDIA_BUS_FMT(YVYU8_1_5X8),
0089 V4L2_MBUS_FROM_MEDIA_BUS_FMT(UYVY8_2X8),
0090 V4L2_MBUS_FROM_MEDIA_BUS_FMT(VYUY8_2X8),
0091 V4L2_MBUS_FROM_MEDIA_BUS_FMT(YUYV8_2X8),
0092 V4L2_MBUS_FROM_MEDIA_BUS_FMT(YVYU8_2X8),
0093 V4L2_MBUS_FROM_MEDIA_BUS_FMT(Y10_1X10),
0094 V4L2_MBUS_FROM_MEDIA_BUS_FMT(UYVY10_2X10),
0095 V4L2_MBUS_FROM_MEDIA_BUS_FMT(VYUY10_2X10),
0096 V4L2_MBUS_FROM_MEDIA_BUS_FMT(YUYV10_2X10),
0097 V4L2_MBUS_FROM_MEDIA_BUS_FMT(YVYU10_2X10),
0098 V4L2_MBUS_FROM_MEDIA_BUS_FMT(Y12_1X12),
0099 V4L2_MBUS_FROM_MEDIA_BUS_FMT(UYVY8_1X16),
0100 V4L2_MBUS_FROM_MEDIA_BUS_FMT(VYUY8_1X16),
0101 V4L2_MBUS_FROM_MEDIA_BUS_FMT(YUYV8_1X16),
0102 V4L2_MBUS_FROM_MEDIA_BUS_FMT(YVYU8_1X16),
0103 V4L2_MBUS_FROM_MEDIA_BUS_FMT(YDYUYDYV8_1X16),
0104 V4L2_MBUS_FROM_MEDIA_BUS_FMT(UYVY10_1X20),
0105 V4L2_MBUS_FROM_MEDIA_BUS_FMT(VYUY10_1X20),
0106 V4L2_MBUS_FROM_MEDIA_BUS_FMT(YUYV10_1X20),
0107 V4L2_MBUS_FROM_MEDIA_BUS_FMT(YVYU10_1X20),
0108 V4L2_MBUS_FROM_MEDIA_BUS_FMT(YUV10_1X30),
0109 V4L2_MBUS_FROM_MEDIA_BUS_FMT(AYUV8_1X32),
0110 V4L2_MBUS_FROM_MEDIA_BUS_FMT(UYVY12_2X12),
0111 V4L2_MBUS_FROM_MEDIA_BUS_FMT(VYUY12_2X12),
0112 V4L2_MBUS_FROM_MEDIA_BUS_FMT(YUYV12_2X12),
0113 V4L2_MBUS_FROM_MEDIA_BUS_FMT(YVYU12_2X12),
0114 V4L2_MBUS_FROM_MEDIA_BUS_FMT(UYVY12_1X24),
0115 V4L2_MBUS_FROM_MEDIA_BUS_FMT(VYUY12_1X24),
0116 V4L2_MBUS_FROM_MEDIA_BUS_FMT(YUYV12_1X24),
0117 V4L2_MBUS_FROM_MEDIA_BUS_FMT(YVYU12_1X24),
0118
0119 V4L2_MBUS_FROM_MEDIA_BUS_FMT(SBGGR8_1X8),
0120 V4L2_MBUS_FROM_MEDIA_BUS_FMT(SGBRG8_1X8),
0121 V4L2_MBUS_FROM_MEDIA_BUS_FMT(SGRBG8_1X8),
0122 V4L2_MBUS_FROM_MEDIA_BUS_FMT(SRGGB8_1X8),
0123 V4L2_MBUS_FROM_MEDIA_BUS_FMT(SBGGR10_ALAW8_1X8),
0124 V4L2_MBUS_FROM_MEDIA_BUS_FMT(SGBRG10_ALAW8_1X8),
0125 V4L2_MBUS_FROM_MEDIA_BUS_FMT(SGRBG10_ALAW8_1X8),
0126 V4L2_MBUS_FROM_MEDIA_BUS_FMT(SRGGB10_ALAW8_1X8),
0127 V4L2_MBUS_FROM_MEDIA_BUS_FMT(SBGGR10_DPCM8_1X8),
0128 V4L2_MBUS_FROM_MEDIA_BUS_FMT(SGBRG10_DPCM8_1X8),
0129 V4L2_MBUS_FROM_MEDIA_BUS_FMT(SGRBG10_DPCM8_1X8),
0130 V4L2_MBUS_FROM_MEDIA_BUS_FMT(SRGGB10_DPCM8_1X8),
0131 V4L2_MBUS_FROM_MEDIA_BUS_FMT(SBGGR10_2X8_PADHI_BE),
0132 V4L2_MBUS_FROM_MEDIA_BUS_FMT(SBGGR10_2X8_PADHI_LE),
0133 V4L2_MBUS_FROM_MEDIA_BUS_FMT(SBGGR10_2X8_PADLO_BE),
0134 V4L2_MBUS_FROM_MEDIA_BUS_FMT(SBGGR10_2X8_PADLO_LE),
0135 V4L2_MBUS_FROM_MEDIA_BUS_FMT(SBGGR10_1X10),
0136 V4L2_MBUS_FROM_MEDIA_BUS_FMT(SGBRG10_1X10),
0137 V4L2_MBUS_FROM_MEDIA_BUS_FMT(SGRBG10_1X10),
0138 V4L2_MBUS_FROM_MEDIA_BUS_FMT(SRGGB10_1X10),
0139 V4L2_MBUS_FROM_MEDIA_BUS_FMT(SBGGR12_1X12),
0140 V4L2_MBUS_FROM_MEDIA_BUS_FMT(SGBRG12_1X12),
0141 V4L2_MBUS_FROM_MEDIA_BUS_FMT(SGRBG12_1X12),
0142 V4L2_MBUS_FROM_MEDIA_BUS_FMT(SRGGB12_1X12),
0143
0144 V4L2_MBUS_FROM_MEDIA_BUS_FMT(JPEG_1X8),
0145
0146 V4L2_MBUS_FROM_MEDIA_BUS_FMT(S5C_UYVY_JPEG_1X8),
0147
0148 V4L2_MBUS_FROM_MEDIA_BUS_FMT(AHSV8888_1X32),
0149 };
0150 #endif
0151
0152 #endif