From patchwork Sun Apr 16 17:35:44 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Frank Schaefer X-Patchwork-Id: 40867 Received: from mail.tu-berlin.de ([130.149.7.33]) by www.linuxtv.org with esmtp (Exim 4.84_2) (envelope-from ) id 1czo5y-0005Na-5y; Sun, 16 Apr 2017 17:36:18 +0000 X-tubIT-Incoming-IP: 209.132.180.67 Received: from vger.kernel.org ([209.132.180.67]) by mail.tu-berlin.de (exim-4.84_2/mailfrontend-7) with esmtp id 1czo5v-0004qS-2v; Sun, 16 Apr 2017 19:36:18 +0200 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756568AbdDPRgG (ORCPT + 1 other); Sun, 16 Apr 2017 13:36:06 -0400 Received: from mail-wr0-f195.google.com ([209.85.128.195]:34516 "EHLO mail-wr0-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756550AbdDPRgD (ORCPT ); Sun, 16 Apr 2017 13:36:03 -0400 Received: by mail-wr0-f195.google.com with SMTP id u18so18048475wrc.1 for ; Sun, 16 Apr 2017 10:36:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=CicOMMyh9nNWega3seU4KJon2YUQM5dd93H/A4VIT1o=; b=hn1zD+rPW5nXfUexmyEwMI8S+IN3OhsjWCYAwwa3EZdd9mujx1llJODVDZntzYuPLQ 7P8aDm7h339I8/PRPW4vjBh7JHvujpMnWQCekBHt+2K7ntLs3Y92a5Pp32RTVzOz2XkM 3Ck15W+3GhOs2nskCS5pXp/XWmpKvFgv2/lnZPnqNtd8uzBvOH+zzwJaW6B3E02xBf6E me+lKlmCnbNaGlQMdN54Hfyv+kT/NKtWU97JuDkWsloB7MGV25vcFdkmYQyeUPyhORnp QvepHhdUMq6OquyN+SzM2Ey0zwT7ZOJI8VpJiFcPnofwodQbFoWNp2Z3HiiwXOavl9j0 9uBQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=CicOMMyh9nNWega3seU4KJon2YUQM5dd93H/A4VIT1o=; b=Ny4CLI23oyWSxI98kkF3VqQjgV1D/ToFr2aqmEPOv0xT8AsslttYJ2loUckIoe5U59 YEAURRqex0O0GLiU4MGuVEHMR2mzAkKfg/XNjZSB16nS2PTTqz2zuAyXj03UuEQnLwMi YBT8hR4qnIE9M9B02fIA9ybgm1fswfjpvlgrRygA/NRUvkr0mGGigoaW8+MQfbt//6to z6TvS6bV/zF+MoU7pNXV0ewcPT6J1p4gcmKMgIAHy6aHeBdvQCDvQ8zvNLuds1iOoHAU SLdjmeLCewAG/S3rrwgEPqXN45qwhss+5Zn1FYnJzW1cduZCdKdnFmDTiOCxcF2FWe8m 6hRw== X-Gm-Message-State: AN3rC/5rcCmjbp4lE3KwzpxNvuTDPHClH79xPHUylBwXC+hWkJJd2TjW 7CXfGpOHvnpmvg== X-Received: by 10.223.171.65 with SMTP id r1mr15576663wrc.31.1492364161916; Sun, 16 Apr 2017 10:36:01 -0700 (PDT) Received: from Athlon64X2-5000.lan (ip-109-90-213-36.hsi11.unitymediagroup.de. [109.90.213.36]) by smtp.googlemail.com with ESMTPSA id l36sm8491642wrl.59.2017.04.16.10.36.00 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Sun, 16 Apr 2017 10:36:01 -0700 (PDT) From: =?UTF-8?q?Frank=20Sch=C3=A4fer?= To: linux-media@vger.kernel.org Cc: guennadi.liakhovetski@intel.com, hans.verkuil@cisco.com, =?UTF-8?q?Frank=20Sch=C3=A4fer?= Subject: [PATCH 5/7] ov2640: fix duplicate width+height returning from ov2640_select_win() Date: Sun, 16 Apr 2017 19:35:44 +0200 Message-Id: <20170416173546.4317-6-fschaefer.oss@googlemail.com> X-Mailer: git-send-email 2.12.2 In-Reply-To: <20170416173546.4317-1-fschaefer.oss@googlemail.com> References: <20170416173546.4317-1-fschaefer.oss@googlemail.com> MIME-Version: 1.0 Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org X-PMX-Version: 6.0.0.2142326, Antispam-Engine: 2.7.2.2107409, Antispam-Data: 2017.4.16.173016 X-PMX-Spam: Gauge=IIIIIIII, Probability=8%, Report=' MULTIPLE_RCPTS 0.1, HTML_00_01 0.05, HTML_00_10 0.05, BODYTEXTP_SIZE_3000_LESS 0, BODY_SIZE_2000_2999 0, BODY_SIZE_5000_LESS 0, BODY_SIZE_7000_LESS 0, CT_TEXT_PLAIN_UTF8_CAPS 0, DKIM_SIGNATURE 0, IN_REP_TO 0, LEGITIMATE_SIGNS 0, MSG_THREAD 0, NO_URI_HTTPS 0, REFERENCES 0, __ANY_URI 0, __CC_NAME 0, __CC_NAME_DIFF_FROM_ACC 0, __CC_REAL_NAMES 0, __CT 0, __CTE 0, __CT_TEXT_PLAIN 0, __FRAUD_BODY_WEBMAIL 0, __FRAUD_WEBMAIL 0, __FRAUD_WEBMAIL_FROM 0, __FROM_DOMAIN_IN_ANY_CC2 0, __FROM_DOMAIN_IN_RCPT 0, __HAS_CC_HDR 0, __HAS_FROM 0, __HAS_LIST_ID 0, __HAS_MSGID 0, __HAS_X_MAILER 0, __HAS_X_MAILING_LIST 0, __IN_REP_TO 0, __MIME_TEXT_ONLY 0, __MIME_TEXT_P 0, __MIME_TEXT_P1 0, __MIME_VERSION 0, __MULTIPLE_RCPTS_CC_X2 0, __NO_HTML_TAG_RAW 0, __PHISH_SPEAR_STRUCTURE_1 0, __REFERENCES 0, __SANE_MSGID 0, __TO_MALFORMED_2 0, __TO_NO_NAME 0, __URI_NO_WWW 0, __URI_NS , __YOUTUBE_RCVD 0' ov2640_select_win() returns height and width values as part of struct ov2640_win_size, so there is no point in modifying the passed height and width parameters, too. Signed-off-by: Frank Schäfer --- drivers/media/i2c/ov2640.c | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/drivers/media/i2c/ov2640.c b/drivers/media/i2c/ov2640.c index 6f0cc722477d..123767c58e83 100644 --- a/drivers/media/i2c/ov2640.c +++ b/drivers/media/i2c/ov2640.c @@ -775,21 +775,16 @@ static int ov2640_s_power(struct v4l2_subdev *sd, int on) } /* Select the nearest higher resolution for capture */ -static const struct ov2640_win_size *ov2640_select_win(u32 *width, u32 *height) +static const struct ov2640_win_size *ov2640_select_win(u32 width, u32 height) { int i, default_size = ARRAY_SIZE(ov2640_supported_win_sizes) - 1; for (i = 0; i < ARRAY_SIZE(ov2640_supported_win_sizes); i++) { - if (ov2640_supported_win_sizes[i].width >= *width && - ov2640_supported_win_sizes[i].height >= *height) { - *width = ov2640_supported_win_sizes[i].width; - *height = ov2640_supported_win_sizes[i].height; + if (ov2640_supported_win_sizes[i].width >= width && + ov2640_supported_win_sizes[i].height >= height) return &ov2640_supported_win_sizes[i]; - } } - *width = ov2640_supported_win_sizes[default_size].width; - *height = ov2640_supported_win_sizes[default_size].height; return &ov2640_supported_win_sizes[default_size]; } @@ -880,8 +875,7 @@ static int ov2640_get_fmt(struct v4l2_subdev *sd, return -EINVAL; if (!priv->win) { - u32 width = SVGA_WIDTH, height = SVGA_HEIGHT; - priv->win = ov2640_select_win(&width, &height); + priv->win = ov2640_select_win(SVGA_WIDTH, SVGA_HEIGHT); priv->cfmt_code = MEDIA_BUS_FMT_UYVY8_2X8; } @@ -906,7 +900,9 @@ static int ov2640_set_fmt(struct v4l2_subdev *sd, return -EINVAL; /* select suitable win */ - win = ov2640_select_win(&mf->width, &mf->height); + win = ov2640_select_win(mf->width, mf->height); + mf->width = win->width; + mf->height = win->height; mf->field = V4L2_FIELD_NONE; mf->colorspace = V4L2_COLORSPACE_SRGB;