From 3b5427bdee70b334c39543ef4c2885e27af7bde6 Mon Sep 17 00:00:00 2001 From: Abhishek Kondaveeti Date: Sun, 13 Dec 2015 18:47:22 +0530 Subject: [PATCH] msm: isp: Add output format support for camif Add output format support for camif raw path in isp. Change-Id: If8e633175a5488b8da740654c8204b0247d3c408 Signed-off-by: Abhishek Kondaveeti --- .../media/platform/msm/camera_v2/isp/msm_isp40.c | 15 ++++++++++++++- include/media/msmb_isp.h | 9 +++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/drivers/media/platform/msm/camera_v2/isp/msm_isp40.c b/drivers/media/platform/msm/camera_v2/isp/msm_isp40.c index 37fea517f01e..fb360501f42a 100644 --- a/drivers/media/platform/msm/camera_v2/isp/msm_isp40.c +++ b/drivers/media/platform/msm/camera_v2/isp/msm_isp40.c @@ -1383,7 +1383,20 @@ static void msm_vfe40_cfg_camif(struct vfe_device *vfe_dev, if (vfe_dev->is_camif_raw_crop_supported) { /* Pdaf output will be sent in PLAIN16 format*/ val = msm_camera_io_r(vfe_dev->vfe_base + 0x54); - val |= 5 << 9; + switch (subsample_cfg->output_format) { + case CAMIF_PLAIN_8: + val |= 4 << 9; + break; + case CAMIF_PLAIN_16: + val |= 5 << 9; + break; + case CAMIF_MIPI_RAW: + val |= 1 << 9; + break; + case CAMIF_QCOM_RAW: + default: + break; + } msm_camera_io_w(val, vfe_dev->vfe_base + 0x54); if (subsample_cfg->first_pixel || subsample_cfg->last_pixel || diff --git a/include/media/msmb_isp.h b/include/media/msmb_isp.h index a9f08941374a..628f41ab4d5d 100644 --- a/include/media/msmb_isp.h +++ b/include/media/msmb_isp.h @@ -162,6 +162,14 @@ struct msm_vfe_fetch_engine_cfg { uint32_t buf_stride; }; +enum msm_vfe_camif_output_format { + CAMIF_QCOM_RAW, + CAMIF_MIPI_RAW, + CAMIF_PLAIN_8, + CAMIF_PLAIN_16, + CAMIF_MAX_FORMAT, +}; + /* * Camif output general configuration */ @@ -175,6 +183,7 @@ struct msm_vfe_camif_subsample_cfg { uint32_t last_line; uint32_t first_pixel; uint32_t last_pixel; + enum msm_vfe_camif_output_format output_format; }; /*