lkml.org 
[lkml]   [2019]   [Apr]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 03/14] [media] mtk-mipicsi: add color format support for mt2712
    Date
    This patch add color format support for mt2712

    Signed-off-by: Stu Hsieh <stu.hsieh@mediatek.com>
    ---
    .../media/platform/mtk-mipicsi/mtk_mipicsi.c | 25 +++++++++++++++++++
    1 file changed, 25 insertions(+)

    diff --git a/drivers/media/platform/mtk-mipicsi/mtk_mipicsi.c b/drivers/media/platform/mtk-mipicsi/mtk_mipicsi.c
    index a5ed720df900..ccf2d18a3e74 100644
    --- a/drivers/media/platform/mtk-mipicsi/mtk_mipicsi.c
    +++ b/drivers/media/platform/mtk-mipicsi/mtk_mipicsi.c
    @@ -139,6 +139,25 @@ static void mtk_mipicsi_remove_device(struct soc_camera_device *icd)
    (void)pm_runtime_put_sync(icd->parent);
    }

    +static bool is_supported(struct soc_camera_device *icd, const u32 pixformat)
    +{
    + bool ret = false;
    +
    + switch (pixformat) {
    + /* YUV422 */
    + case V4L2_PIX_FMT_YUYV:
    + case V4L2_PIX_FMT_UYVY:
    + case V4L2_PIX_FMT_YVYU:
    + case V4L2_PIX_FMT_VYUY:
    + ret = true;
    + break;
    + default:
    + break;
    + }
    +
    + return ret;
    +}
    +
    static int mtk_mipicsi_set_fmt(struct soc_camera_device *icd,
    struct v4l2_format *f)
    {
    @@ -154,6 +173,12 @@ static int mtk_mipicsi_set_fmt(struct soc_camera_device *icd,
    struct v4l2_mbus_framefmt *mf = &format.format;
    int ret = 0;

    + if (!is_supported(icd, pix->pixelformat)) {
    + dev_err(dev, "Format %x not support. set V4L2_PIX_FMT_YUYV as default\n",
    + pix->pixelformat);
    + pix->pixelformat = V4L2_PIX_FMT_YUYV;
    + }
    +
    xlate = soc_camera_xlate_by_fourcc(icd, pix->pixelformat);
    if (xlate == NULL) {
    dev_err(dev, "Format 0x%x not found\n", pix->pixelformat);
    --
    2.18.0
    \
     
     \ /
      Last update: 2019-04-08 13:57    [W:3.529 / U:0.424 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site