From de0f82b0e1b7cc43a835c88c5d31f7d924a6bc04 Mon Sep 17 00:00:00 2001 From: Albert Wang Date: Wed, 1 Aug 2012 02:45:41 -0300 Subject: [PATCH] --- yaml --- r: 330904 b: refs/heads/master c: a70a6c4330e552b829eb1aecb390fef5841e0918 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/media/platform/soc_camera.c | 3 ++- trunk/drivers/media/platform/soc_mediabus.c | 6 ++++++ 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index cff7cf76d1e0..44368af83642 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: c4ede4cedad1163345a2c2b4abc7e2208034190e +refs/heads/master: a70a6c4330e552b829eb1aecb390fef5841e0918 diff --git a/trunk/drivers/media/platform/soc_camera.c b/trunk/drivers/media/platform/soc_camera.c index 6da8e5db4d2b..10b57f8e7ec8 100644 --- a/trunk/drivers/media/platform/soc_camera.c +++ b/trunk/drivers/media/platform/soc_camera.c @@ -182,7 +182,8 @@ static int soc_camera_try_fmt(struct soc_camera_device *icd, dev_dbg(icd->pdev, "TRY_FMT(%c%c%c%c, %ux%u)\n", pixfmtstr(pix->pixelformat), pix->width, pix->height); - if (!(ici->capabilities & SOCAM_HOST_CAP_STRIDE)) { + if (pix->pixelformat != V4L2_PIX_FMT_JPEG && + !(ici->capabilities & SOCAM_HOST_CAP_STRIDE)) { pix->bytesperline = 0; pix->sizeimage = 0; } diff --git a/trunk/drivers/media/platform/soc_mediabus.c b/trunk/drivers/media/platform/soc_mediabus.c index 89dce097a827..a397812635d6 100644 --- a/trunk/drivers/media/platform/soc_mediabus.c +++ b/trunk/drivers/media/platform/soc_mediabus.c @@ -378,6 +378,9 @@ EXPORT_SYMBOL(soc_mbus_samples_per_pixel); s32 soc_mbus_bytes_per_line(u32 width, const struct soc_mbus_pixelfmt *mf) { + if (mf->fourcc == V4L2_PIX_FMT_JPEG) + return 0; + if (mf->layout != SOC_MBUS_LAYOUT_PACKED) return width * mf->bits_per_sample / 8; @@ -400,6 +403,9 @@ EXPORT_SYMBOL(soc_mbus_bytes_per_line); s32 soc_mbus_image_size(const struct soc_mbus_pixelfmt *mf, u32 bytes_per_line, u32 height) { + if (mf->fourcc == V4L2_PIX_FMT_JPEG) + return 0; + if (mf->layout == SOC_MBUS_LAYOUT_PACKED) return bytes_per_line * height;