aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/media/platform/soc_camera/rcar_vin.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/media/platform/soc_camera/rcar_vin.c b/drivers/media/platform/soc_camera/rcar_vin.c
index 0ff5cfaf2677..704eee766487 100644
--- a/drivers/media/platform/soc_camera/rcar_vin.c
+++ b/drivers/media/platform/soc_camera/rcar_vin.c
@@ -68,6 +68,8 @@
68#define VNMC_YCAL (1 << 19) 68#define VNMC_YCAL (1 << 19)
69#define VNMC_INF_YUV8_BT656 (0 << 16) 69#define VNMC_INF_YUV8_BT656 (0 << 16)
70#define VNMC_INF_YUV8_BT601 (1 << 16) 70#define VNMC_INF_YUV8_BT601 (1 << 16)
71#define VNMC_INF_YUV10_BT656 (2 << 16)
72#define VNMC_INF_YUV10_BT601 (3 << 16)
71#define VNMC_INF_YUV16 (5 << 16) 73#define VNMC_INF_YUV16 (5 << 16)
72#define VNMC_VUP (1 << 10) 74#define VNMC_VUP (1 << 10)
73#define VNMC_IM_ODD (0 << 3) 75#define VNMC_IM_ODD (0 << 3)
@@ -275,6 +277,12 @@ static int rcar_vin_setup(struct rcar_vin_priv *priv)
275 /* BT.656 8bit YCbCr422 or BT.601 8bit YCbCr422 */ 277 /* BT.656 8bit YCbCr422 or BT.601 8bit YCbCr422 */
276 vnmc |= priv->pdata->flags & RCAR_VIN_BT656 ? 278 vnmc |= priv->pdata->flags & RCAR_VIN_BT656 ?
277 VNMC_INF_YUV8_BT656 : VNMC_INF_YUV8_BT601; 279 VNMC_INF_YUV8_BT656 : VNMC_INF_YUV8_BT601;
280 break;
281 case V4L2_MBUS_FMT_YUYV10_2X10:
282 /* BT.656 10bit YCbCr422 or BT.601 10bit YCbCr422 */
283 vnmc |= priv->pdata->flags & RCAR_VIN_BT656 ?
284 VNMC_INF_YUV10_BT656 : VNMC_INF_YUV10_BT601;
285 break;
278 default: 286 default:
279 break; 287 break;
280 } 288 }
@@ -1003,6 +1011,7 @@ static int rcar_vin_get_formats(struct soc_camera_device *icd, unsigned int idx,
1003 switch (code) { 1011 switch (code) {
1004 case V4L2_MBUS_FMT_YUYV8_1X16: 1012 case V4L2_MBUS_FMT_YUYV8_1X16:
1005 case V4L2_MBUS_FMT_YUYV8_2X8: 1013 case V4L2_MBUS_FMT_YUYV8_2X8:
1014 case V4L2_MBUS_FMT_YUYV10_2X10:
1006 if (cam->extra_fmt) 1015 if (cam->extra_fmt)
1007 break; 1016 break;
1008 1017