From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id AF4FAC4332F for ; Mon, 13 Dec 2021 13:52:22 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233741AbhLMNwV (ORCPT ); Mon, 13 Dec 2021 08:52:21 -0500 Received: from esa.microchip.iphmx.com ([68.232.153.233]:23851 "EHLO esa.microchip.iphmx.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233710AbhLMNwU (ORCPT ); Mon, 13 Dec 2021 08:52:20 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=microchip.com; i=@microchip.com; q=dns/txt; s=mchp; t=1639403540; x=1670939540; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=QFcZqhwV54wl82Sk8IHg25ljnl0Hvg//Cvz5aknbgrg=; b=b2G8P1WmSNBHLJrBixGfm2zMKtfS+hlh7UFMa8luI0E1FA5dXhPyGl1M bFDHu60n/Z1gJUWkQb0ypavwPaPYsg7MAhfnCSxLSHn8bSbx6qN+oIr8O rTFyGQL8Y0UHNSHuTeE9Nk/ByfNqoFXvxS0A2tG0LU9geK8VdqkyBKBOk WA1OHIO/RxzjX1zKGodatUkwpA07M3XD6Kg6/qeb5nNcSReYT1n54MrBD OvOHgPmh/O+RJaju5BXnUi8OAjmrTPWuMe6bQ0EKGHehsjzvjWOEvsIPw pongaANAC6A+NB471uBi8m4UBqWsI17X6Tsn/7awr/oPWW4LIgnZILnW/ A==; IronPort-SDR: K8zkbK7wl0bJt7lWbCrSvB0r4aFrddgOq/8/l3OXVvYVwXAz5NoBE4Qx16+HpX2xenNOg2tN6o kSHQtMUAPTtSlFp7mNCqmmnnJFU9/qdd4krhJY65yQwgvrLMxXDAZUQPcEWvVBA89UH9qSvVox 4UwZ327HxO2zYaoNLTJaYFWkITHVnG7uXxNaxU/S27Aq9U0lOWzQciKYA8TrB/G0RcuSQ+OVtd mAd2GSEwxrpkC1WEresMCyGmAOaXVJeMZ4EcgdHtEfMa3nDxxkSdSS0RZ99sXbrq/fOWuU86Lg RcaqCqmdIAJddW9z64uptgsC X-IronPort-AV: E=Sophos;i="5.88,202,1635231600"; d="scan'208";a="155269892" Received: from smtpout.microchip.com (HELO email.microchip.com) ([198.175.253.82]) by esa1.microchip.iphmx.com with ESMTP/TLS/AES256-SHA256; 13 Dec 2021 06:52:19 -0700 Received: from chn-vm-ex01.mchp-main.com (10.10.85.143) by chn-vm-ex01.mchp-main.com (10.10.85.143) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.17; Mon, 13 Dec 2021 06:52:19 -0700 Received: from ROB-ULT-M18282.microchip.com (10.10.115.15) by chn-vm-ex01.mchp-main.com (10.10.85.143) with Microsoft SMTP Server id 15.1.2375.17 via Frontend Transport; Mon, 13 Dec 2021 06:52:10 -0700 From: Eugen Hristev To: , , , , CC: , , , , "Eugen Hristev" Subject: [PATCH v3 09/23] media: atmel: atmel-isc-base: report frame sizes as full supported range Date: Mon, 13 Dec 2021 15:49:26 +0200 Message-ID: <20211213134940.324266-10-eugen.hristev@microchip.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20211213134940.324266-1-eugen.hristev@microchip.com> References: <20211213134940.324266-1-eugen.hristev@microchip.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The ISC supports a full broad range of frame sizes. Until now, the subdevice was queried for possible frame sizes and these were reported to the user space. However, the ISC should not care about which frame sizes the subdev supports, as long as this frame size is supported. Thus, report a continuous range from smallest frame size up to the max resolution. Signed-off-by: Eugen Hristev Reviewed-by: Jacopo Mondi --- drivers/media/platform/atmel/atmel-isc-base.c | 22 +++++++++---------- 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/drivers/media/platform/atmel/atmel-isc-base.c b/drivers/media/platform/atmel/atmel-isc-base.c index 3389671fbfb9..bf638d201b29 100644 --- a/drivers/media/platform/atmel/atmel-isc-base.c +++ b/drivers/media/platform/atmel/atmel-isc-base.c @@ -1076,14 +1076,12 @@ static int isc_enum_framesizes(struct file *file, void *fh, struct v4l2_frmsizeenum *fsize) { struct isc_device *isc = video_drvdata(file); - struct v4l2_subdev_frame_size_enum fse = { - .code = isc->config.sd_format->mbus_code, - .index = fsize->index, - .which = V4L2_SUBDEV_FORMAT_ACTIVE, - }; int ret = -EINVAL; int i; + if (fsize->index) + return -EINVAL; + for (i = 0; i < isc->num_user_formats; i++) if (isc->user_formats[i]->fourcc == fsize->pixel_format) ret = 0; @@ -1095,14 +1093,14 @@ static int isc_enum_framesizes(struct file *file, void *fh, if (ret) return ret; - ret = v4l2_subdev_call(isc->current_subdev->sd, pad, enum_frame_size, - NULL, &fse); - if (ret) - return ret; + fsize->type = V4L2_FRMSIZE_TYPE_CONTINUOUS; - fsize->type = V4L2_FRMSIZE_TYPE_DISCRETE; - fsize->discrete.width = fse.max_width; - fsize->discrete.height = fse.max_height; + fsize->stepwise.min_width = 16; + fsize->stepwise.max_width = isc->max_width; + fsize->stepwise.min_height = 16; + fsize->stepwise.max_height = isc->max_height; + fsize->stepwise.step_width = 1; + fsize->stepwise.step_height = 1; return 0; } -- 2.25.1 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 526F9C433EF for ; Mon, 13 Dec 2021 13:59:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-ID:Date:Subject:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=V6OYvQx6yKnlr974/rA8uH1/rknDpIAM49Ncizm67ag=; b=OVG2WfTs6j+8DB Aq2PQ2FxJKTGicpO4zgo7CJnbUyLrE/DAKfGwITBAT0nyFu3Drn0NuPzGtrFi7iBXmSkpa5vQFOPl 1vFhhvwwngv8YYYaaGD6ZZnyPOjTp5ccxZeS0qLu0+7cT2S9t8lOIMEC/kypRdPScJKAKP66mdK6R YUZVofoljmJgcSDvJxGi9YTrwibSoO2VpaC54rzflxt6SXLIalRwu2t+tgH6LKoJJgEj637yisaSR nJBbyrCf8XiJq9v78zSLZTq5H8ooSSP+fRUiq6Vw1sIiub6ajjmS2uz7bunIwkd7HC5CxO8B1RIzh Xt9g/yW/K2s5Dfq1+eTw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1mwlpw-009qyF-J0; Mon, 13 Dec 2021 13:57:53 +0000 Received: from esa.microchip.iphmx.com ([68.232.153.233]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1mwlka-009oT1-H8 for linux-arm-kernel@lists.infradead.org; Mon, 13 Dec 2021 13:52:24 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=microchip.com; i=@microchip.com; q=dns/txt; s=mchp; t=1639403540; x=1670939540; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=QFcZqhwV54wl82Sk8IHg25ljnl0Hvg//Cvz5aknbgrg=; b=b2G8P1WmSNBHLJrBixGfm2zMKtfS+hlh7UFMa8luI0E1FA5dXhPyGl1M bFDHu60n/Z1gJUWkQb0ypavwPaPYsg7MAhfnCSxLSHn8bSbx6qN+oIr8O rTFyGQL8Y0UHNSHuTeE9Nk/ByfNqoFXvxS0A2tG0LU9geK8VdqkyBKBOk WA1OHIO/RxzjX1zKGodatUkwpA07M3XD6Kg6/qeb5nNcSReYT1n54MrBD OvOHgPmh/O+RJaju5BXnUi8OAjmrTPWuMe6bQ0EKGHehsjzvjWOEvsIPw pongaANAC6A+NB471uBi8m4UBqWsI17X6Tsn/7awr/oPWW4LIgnZILnW/ A==; IronPort-SDR: K8zkbK7wl0bJt7lWbCrSvB0r4aFrddgOq/8/l3OXVvYVwXAz5NoBE4Qx16+HpX2xenNOg2tN6o kSHQtMUAPTtSlFp7mNCqmmnnJFU9/qdd4krhJY65yQwgvrLMxXDAZUQPcEWvVBA89UH9qSvVox 4UwZ327HxO2zYaoNLTJaYFWkITHVnG7uXxNaxU/S27Aq9U0lOWzQciKYA8TrB/G0RcuSQ+OVtd mAd2GSEwxrpkC1WEresMCyGmAOaXVJeMZ4EcgdHtEfMa3nDxxkSdSS0RZ99sXbrq/fOWuU86Lg RcaqCqmdIAJddW9z64uptgsC X-IronPort-AV: E=Sophos;i="5.88,202,1635231600"; d="scan'208";a="155269892" Received: from smtpout.microchip.com (HELO email.microchip.com) ([198.175.253.82]) by esa1.microchip.iphmx.com with ESMTP/TLS/AES256-SHA256; 13 Dec 2021 06:52:19 -0700 Received: from chn-vm-ex01.mchp-main.com (10.10.85.143) by chn-vm-ex01.mchp-main.com (10.10.85.143) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.17; Mon, 13 Dec 2021 06:52:19 -0700 Received: from ROB-ULT-M18282.microchip.com (10.10.115.15) by chn-vm-ex01.mchp-main.com (10.10.85.143) with Microsoft SMTP Server id 15.1.2375.17 via Frontend Transport; Mon, 13 Dec 2021 06:52:10 -0700 From: Eugen Hristev To: , , , , Subject: [PATCH v3 09/23] media: atmel: atmel-isc-base: report frame sizes as full supported range Date: Mon, 13 Dec 2021 15:49:26 +0200 Message-ID: <20211213134940.324266-10-eugen.hristev@microchip.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20211213134940.324266-1-eugen.hristev@microchip.com> References: <20211213134940.324266-1-eugen.hristev@microchip.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20211213_055220_618925_D9FBB8AA X-CRM114-Status: GOOD ( 12.03 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devicetree@vger.kernel.org, Eugen Hristev , linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org The ISC supports a full broad range of frame sizes. Until now, the subdevice was queried for possible frame sizes and these were reported to the user space. However, the ISC should not care about which frame sizes the subdev supports, as long as this frame size is supported. Thus, report a continuous range from smallest frame size up to the max resolution. Signed-off-by: Eugen Hristev Reviewed-by: Jacopo Mondi --- drivers/media/platform/atmel/atmel-isc-base.c | 22 +++++++++---------- 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/drivers/media/platform/atmel/atmel-isc-base.c b/drivers/media/platform/atmel/atmel-isc-base.c index 3389671fbfb9..bf638d201b29 100644 --- a/drivers/media/platform/atmel/atmel-isc-base.c +++ b/drivers/media/platform/atmel/atmel-isc-base.c @@ -1076,14 +1076,12 @@ static int isc_enum_framesizes(struct file *file, void *fh, struct v4l2_frmsizeenum *fsize) { struct isc_device *isc = video_drvdata(file); - struct v4l2_subdev_frame_size_enum fse = { - .code = isc->config.sd_format->mbus_code, - .index = fsize->index, - .which = V4L2_SUBDEV_FORMAT_ACTIVE, - }; int ret = -EINVAL; int i; + if (fsize->index) + return -EINVAL; + for (i = 0; i < isc->num_user_formats; i++) if (isc->user_formats[i]->fourcc == fsize->pixel_format) ret = 0; @@ -1095,14 +1093,14 @@ static int isc_enum_framesizes(struct file *file, void *fh, if (ret) return ret; - ret = v4l2_subdev_call(isc->current_subdev->sd, pad, enum_frame_size, - NULL, &fse); - if (ret) - return ret; + fsize->type = V4L2_FRMSIZE_TYPE_CONTINUOUS; - fsize->type = V4L2_FRMSIZE_TYPE_DISCRETE; - fsize->discrete.width = fse.max_width; - fsize->discrete.height = fse.max_height; + fsize->stepwise.min_width = 16; + fsize->stepwise.max_width = isc->max_width; + fsize->stepwise.min_height = 16; + fsize->stepwise.max_height = isc->max_height; + fsize->stepwise.step_width = 1; + fsize->stepwise.step_height = 1; return 0; } -- 2.25.1 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel