Message ID | uwscdm9t7.wl%morimoto.kuninori@renesas.com (mailing list archive) |
---|---|
State | Rejected, archived |
Headers |
Return-path: <linux-media-owner@vger.kernel.org> Envelope-to: mchehab@infradead.org Delivery-date: Fri, 30 Jan 2009 09:18:23 +0000 Received: from vger.kernel.org ([209.132.176.167]) by bombadil.infradead.org with esmtp (Exim 4.69 #1 (Red Hat Linux)) id 1LSpW3-0002df-LH for mchehab@infradead.org; Fri, 30 Jan 2009 09:18:23 +0000 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751023AbZA3JSV (ORCPT <rfc822;mchehab@infradead.org>); Fri, 30 Jan 2009 04:18:21 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751407AbZA3JSV (ORCPT <rfc822;linux-media-outgoing>); Fri, 30 Jan 2009 04:18:21 -0500 Received: from mail.renesas.com ([202.234.163.13]:60261 "EHLO mail04.idc.renesas.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751023AbZA3JSU (ORCPT <rfc822;linux-media@vger.kernel.org>); Fri, 30 Jan 2009 04:18:20 -0500 X-AuditID: ac140387-00000008000005fd-5a-4982c5d70b66 Received: from guardian02.idc.renesas.com ([172.20.8.201]) by mail04.idc.renesas.com (sendmail) with ESMTP id n0U9IE74016706; Fri, 30 Jan 2009 18:18:14 +0900 (JST) Received: (from root@localhost) by guardian02.idc.renesas.com with id n0U9ID81004555; Fri, 30 Jan 2009 18:18:13 +0900 (JST) Received: from mta01.idc.renesas.com (localhost [127.0.0.1]) by mta01.idc.renesas.com with ESMTP id n0U9IDPC027684; Fri, 30 Jan 2009 18:18:13 +0900 (JST) Received: from PG10870.renesas.com ([172.30.8.159]) by ims05.idc.renesas.com (Sendmail) with ESMTPA id <0KEA000BQ1UDL6@ims05.idc.renesas.com>; Fri, 30 Jan 2009 18:18:13 +0900 (JST) Date: Tue, 27 Jan 2009 15:02:41 +0900 From: Kuninori Morimoto <morimoto.kuninori@renesas.com> Subject: [PATCH] tw9910: color format check is added on set_fmt To: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Cc: Linux Media <linux-media@vger.kernel.org> Message-id: <uwscdm9t7.wl%morimoto.kuninori@renesas.com> MIME-version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-type: text/plain; charset=US-ASCII User-Agent: SEMI/1.14.6 (Maruoka) FLIM/1.14.9 (=?ISO-8859-4?Q?Goj=F2?=) APEL/10.7 Emacs/22.1 (i386-mingw-nt5.1.2600) MULE/5.0 (SAKAKI) Meadow/3.00-dev (KIKU) X-Brightmail-Tracker: AAAAAA== Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: <linux-media.vger.kernel.org> X-Mailing-List: linux-media@vger.kernel.org |
Commit Message
Kuninori Morimoto
Jan. 27, 2009, 6:02 a.m. UTC
Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com>
---
drivers/media/video/tw9910.c | 13 +++++++++++++
1 files changed, 13 insertions(+), 0 deletions(-)
Comments
On Tue, 27 Jan 2009, Kuninori Morimoto wrote: > > Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com> Why is this needed? Do you see any possibility for tw9910 to be called with an unsupported format? Thanks Guennadi > --- > drivers/media/video/tw9910.c | 13 +++++++++++++ > 1 files changed, 13 insertions(+), 0 deletions(-) > > diff --git a/drivers/media/video/tw9910.c b/drivers/media/video/tw9910.c > index 1a9c6fd..57027c0 100644 > --- a/drivers/media/video/tw9910.c > +++ b/drivers/media/video/tw9910.c > @@ -647,6 +647,19 @@ static int tw9910_set_fmt(struct soc_camera_device *icd, __u32 pixfmt, > struct tw9910_priv *priv = container_of(icd, struct tw9910_priv, icd); > int ret = -EINVAL; > u8 val; > + int i; > + > + /* > + * check color format > + */ > + for (i = 0 ; i < ARRAY_SIZE(tw9910_color_fmt) ; i++) { > + if (pixfmt == tw9910_color_fmt[i].fourcc) { > + ret = 0; > + break; > + } > + } > + if (ret < 0) > + goto tw9910_set_fmt_error; > > /* > * select suitable norm > -- > 1.5.6.3 > --- Guennadi Liakhovetski, Ph.D. Freelance Open-Source Software Developer -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Dear Guennadi > > Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com> > > Why is this needed? Do you see any possibility for tw9910 to be called > with an unsupported format? for example, capture_example -f use V4L2_PIX_FMT_YUYV. but tw9910 support only V4L2_PIX_FMT_VYUY now. If you think this patch is unnecessary, please ignore it. Best regards -- Kuninori Morimoto -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Mon, 2 Feb 2009, morimoto.kuninori@renesas.com wrote: > > > Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com> > > > > Why is this needed? Do you see any possibility for tw9910 to be called > > with an unsupported format? > > for example, > capture_example -f use V4L2_PIX_FMT_YUYV. > but tw9910 support only V4L2_PIX_FMT_VYUY now. But are you actually getting this set_fmt(V4L2_PIX_FMT_YUYV) in your tw9910 driver? If yes, then this is a bug elsewhere. It shouldn't get this far. It should be caught earlier along the path soc_camera_s_fmt_vid_cap() soc_camera_try_fmt_vid_cap() sh_mobile_ceu_try_fmt() soc_camera_xlate_by_fourcc() <error> > If you think this patch is unnecessary, > please ignore it. Could you please test whether you indeed can get an unsupported format in your driver. If so, this is a bug at a higher level and we'll have to fix it there. I'll drop this patch for now. Thanks Guennadi --- Guennadi Liakhovetski, Ph.D. Freelance Open-Source Software Developer -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Dear Guennadi > > If you think this patch is unnecessary, > > please ignore it. > > Could you please test whether you indeed can get an unsupported format in > your driver. If so, this is a bug at a higher level and we'll have to fix > it there. I'll drop this patch for now. tw9910 driver can not get an unsupported format. host driver (sh_mobile_ceu) check it and return error. I just thought double check is important. sorry. Best regards -- Kuninori Morimoto -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/media/video/tw9910.c b/drivers/media/video/tw9910.c index 1a9c6fd..57027c0 100644 --- a/drivers/media/video/tw9910.c +++ b/drivers/media/video/tw9910.c @@ -647,6 +647,19 @@ static int tw9910_set_fmt(struct soc_camera_device *icd, __u32 pixfmt, struct tw9910_priv *priv = container_of(icd, struct tw9910_priv, icd); int ret = -EINVAL; u8 val; + int i; + + /* + * check color format + */ + for (i = 0 ; i < ARRAY_SIZE(tw9910_color_fmt) ; i++) { + if (pixfmt == tw9910_color_fmt[i].fourcc) { + ret = 0; + break; + } + } + if (ret < 0) + goto tw9910_set_fmt_error; /* * select suitable norm