|
@@ -68,6 +68,8 @@
|
|
|
#define VNMC_YCAL (1 << 19)
|
|
|
#define VNMC_INF_YUV8_BT656 (0 << 16)
|
|
|
#define VNMC_INF_YUV8_BT601 (1 << 16)
|
|
|
+#define VNMC_INF_YUV10_BT656 (2 << 16)
|
|
|
+#define VNMC_INF_YUV10_BT601 (3 << 16)
|
|
|
#define VNMC_INF_YUV16 (5 << 16)
|
|
|
#define VNMC_VUP (1 << 10)
|
|
|
#define VNMC_IM_ODD (0 << 3)
|
|
@@ -275,6 +277,12 @@ static int rcar_vin_setup(struct rcar_vin_priv *priv)
|
|
|
/* BT.656 8bit YCbCr422 or BT.601 8bit YCbCr422 */
|
|
|
vnmc |= priv->pdata->flags & RCAR_VIN_BT656 ?
|
|
|
VNMC_INF_YUV8_BT656 : VNMC_INF_YUV8_BT601;
|
|
|
+ break;
|
|
|
+ case V4L2_MBUS_FMT_YUYV10_2X10:
|
|
|
+ /* BT.656 10bit YCbCr422 or BT.601 10bit YCbCr422 */
|
|
|
+ vnmc |= priv->pdata->flags & RCAR_VIN_BT656 ?
|
|
|
+ VNMC_INF_YUV10_BT656 : VNMC_INF_YUV10_BT601;
|
|
|
+ break;
|
|
|
default:
|
|
|
break;
|
|
|
}
|
|
@@ -1003,6 +1011,7 @@ static int rcar_vin_get_formats(struct soc_camera_device *icd, unsigned int idx,
|
|
|
switch (code) {
|
|
|
case V4L2_MBUS_FMT_YUYV8_1X16:
|
|
|
case V4L2_MBUS_FMT_YUYV8_2X8:
|
|
|
+ case V4L2_MBUS_FMT_YUYV10_2X10:
|
|
|
if (cam->extra_fmt)
|
|
|
break;
|
|
|
|