From patchwork Sun Feb 23 18:58:04 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ricardo Ribalda X-Patchwork-Id: 13987200 Received: from mail-qk1-f172.google.com (mail-qk1-f172.google.com [209.85.222.172]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8DA8218FC9F for ; Sun, 23 Feb 2025 18:59:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.222.172 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740337166; cv=none; b=YVsftuJfgcn96yQTMNAO3zyZN4+CPQFFf8j07q9V5yaYfHVPxve5IOXy7nRcHDcbyuuRN4zy0791c9riuOGJFfzYrDnLQmxPwtU90ly71+X304bAh8E9aLbl5qYnRI4dFViY8w7nx4ymDXtngVxG4GG10ZCeMQ3DgY7e5In6RNg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740337166; c=relaxed/simple; bh=o5WkpnQ73V+VMo8bdoFaUftuXdW+rujG4ME3lX7eEqw=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=czqlV7DBnE4eRiyNl2Z4ek+cEt4le3wwhmNb+jrCBAZFpBaTMWtHIKkpr/RRJbGMaDZ6OPx6uUvkNDEYmfNHYNvxcZ5m2sG3wZEIXDHmt2Chc9wTdyXylDxm4CUNV7MzqMSp3K0dSpYNKHEpVdrcQc4Yo5tjBG/wPYK/NZzrlpc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org; spf=pass smtp.mailfrom=chromium.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b=ZVJUnLiY; arc=none smtp.client-ip=209.85.222.172 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=chromium.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b="ZVJUnLiY" Received: by mail-qk1-f172.google.com with SMTP id af79cd13be357-7c0c5682c41so248274785a.2 for ; Sun, 23 Feb 2025 10:59:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1740337163; x=1740941963; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=bgEaj88gwe50jW8BgyaHtEFtSSSTKBTD6iombmDXrgk=; b=ZVJUnLiY1GSIP75VooeahuZnuYwRhsVZWXF1VAxDhKZaRwq4FlkUjpy7Uecd6UDGme rGNBLSM65Rtzzqi6a6BqTJToyJ9QJXTJlg/wvgCos6T/dEmEwQ/6SFMFYuxQIUSmqe9q E9yACB8p2ZyVeOIGAnOv54niodLHiOldbp9to= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740337163; x=1740941963; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=bgEaj88gwe50jW8BgyaHtEFtSSSTKBTD6iombmDXrgk=; b=rUwSXgQedoEGj0xqWUJC3aJ7rDOze4RcbDsRqMA2OR0Kpx9WgQ4n00BSbXwZiqHYwB 7xWTkGByCUXXSvhMEpetmRFPi5ZcnU2URle0kCWUNDc8TDVTuBbyXPCOvOrhRAq5/rYy VTjVTiCJY+7jd2NoEsdRH8PtFs3VW2Ad2S7+3Qcv0MqEa7OEpkwb8TQQKs4wKmT+RNAF xufenEQuFbmh6kWysppYXmJ4aNY2FzBjxfW929Pem+S9DNoZOskoXM799lHNLCxAMJ9F oC7vrxHEeWjxzuhVhCOk0pXEyIAXlulN3Du+8EHadK2NyPqfCkmg1hhq6qamPCZgGC8G 5aRg== X-Gm-Message-State: AOJu0Yy9nCSl0bP/duRZ56qH5bKlUBsJZRIaSNiuZZIYyv3kLFb/FiBP 7UMwB2Z44s/s2m58euFitUTUuyMMKkd+HVgbezo3rgC/1oc+RONhq4yx7bmRag== X-Gm-Gg: ASbGncsuWfHQ1b/suZLtiVMb6zIvRWX95d2QJXK4cg1H5o490OocqXiKrbmCwf/6G44 hnmCknSic/3b3a5jDiTEAXkdIDqb8OnZSiBqyRsXL93Dvsy9lvV8uOnkmagMO8w42fbGLaI+dts HAl3802EUnEqv0e6hpzi0tQTFWotSU+tA55vkeeLgKri/6jNxcXgrZRMjzh9XdeMjHk2sZsgnzo 3BjYVH2P4ilABY8kaIqQtxdFc7z9c5MS/VvhTfD4vTTSIRn93KNCYywlv7nlIzP8YMF1oJpHFRZ PbsVlf6jdg3pnUJsCvhD7N465+uN9dkqyIEKwl5cfP/hz4EUlsc7+6yVWzyq9PrVn/quHoeyssr Ncxg= X-Google-Smtp-Source: AGHT+IHGjRoitg4iizBR56/YqzL9lfxWldkcIk6dKi7DdbK876lHC2pCcmEyx2EPjcz9GSOVicGTRQ== X-Received: by 2002:a05:620a:1910:b0:7c0:b4f4:1633 with SMTP id af79cd13be357-7c0cf8c6679mr1064156285a.15.1740337163452; Sun, 23 Feb 2025 10:59:23 -0800 (PST) Received: from denia.c.googlers.com (15.237.245.35.bc.googleusercontent.com. [35.245.237.15]) by smtp.gmail.com with ESMTPSA id af79cd13be357-7c09bf81253sm894052885a.47.2025.02.23.10.59.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Feb 2025 10:59:22 -0800 (PST) From: Ricardo Ribalda Date: Sun, 23 Feb 2025 18:58:04 +0000 Subject: [PATCH v3 01/12] media: ioctl: Simulate v4l2_queryctrl with v4l2_query_ext_ctrl Precedence: bulk X-Mailing-List: linux-media@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250223-queryctrl-v3-1-4292911cab6b@chromium.org> References: <20250223-queryctrl-v3-0-4292911cab6b@chromium.org> In-Reply-To: <20250223-queryctrl-v3-0-4292911cab6b@chromium.org> To: Mauro Carvalho Chehab , Mike Isely , Laurent Pinchart , Hans de Goede , Sakari Ailus , Andy Shevchenko , Greg Kroah-Hartman , Hans Verkuil Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, linux-staging@lists.linux.dev, Ricardo Ribalda X-Mailer: b4 0.13.0 v4l2_queryctrl is a subset of v4l2_query_ext_ctrl. If the driver does not implement v4l2_queryctrl we can implement it with v4l2_query_ext_ctrl. Suggested-by: Hans de Goede Signed-off-by: Ricardo Ribalda --- drivers/media/v4l2-core/v4l2-dev.c | 3 ++- drivers/media/v4l2-core/v4l2-ioctl.c | 37 +++++++++++++++++++++++++++++++++++- 2 files changed, 38 insertions(+), 2 deletions(-) diff --git a/drivers/media/v4l2-core/v4l2-dev.c b/drivers/media/v4l2-core/v4l2-dev.c index 5bcaeeba4d09..252308a67fa8 100644 --- a/drivers/media/v4l2-core/v4l2-dev.c +++ b/drivers/media/v4l2-core/v4l2-dev.c @@ -572,7 +572,8 @@ static void determine_valid_ioctls(struct video_device *vdev) and that can't be tested here. If the bit for these control ioctls is set, then the ioctl is valid. But if it is 0, then it can still be valid if the filehandle passed the control handler. */ - if (vdev->ctrl_handler || ops->vidioc_queryctrl) + if (vdev->ctrl_handler || ops->vidioc_queryctrl || + ops->vidioc_query_ext_ctrl) __set_bit(_IOC_NR(VIDIOC_QUERYCTRL), valid_ioctls); if (vdev->ctrl_handler || ops->vidioc_query_ext_ctrl) __set_bit(_IOC_NR(VIDIOC_QUERY_EXT_CTRL), valid_ioctls); diff --git a/drivers/media/v4l2-core/v4l2-ioctl.c b/drivers/media/v4l2-core/v4l2-ioctl.c index 0304daa8471d..deed2b44ee18 100644 --- a/drivers/media/v4l2-core/v4l2-ioctl.c +++ b/drivers/media/v4l2-core/v4l2-ioctl.c @@ -2284,9 +2284,11 @@ static int v4l_queryctrl(const struct v4l2_ioctl_ops *ops, struct file *file, void *fh, void *arg) { struct video_device *vfd = video_devdata(file); + struct v4l2_query_ext_ctrl qec = {}; struct v4l2_queryctrl *p = arg; struct v4l2_fh *vfh = test_bit(V4L2_FL_USES_V4L2_FH, &vfd->flags) ? fh : NULL; + int ret; if (vfh && vfh->ctrl_handler) return v4l2_queryctrl(vfh->ctrl_handler, p); @@ -2294,7 +2296,40 @@ static int v4l_queryctrl(const struct v4l2_ioctl_ops *ops, return v4l2_queryctrl(vfd->ctrl_handler, p); if (ops->vidioc_queryctrl) return ops->vidioc_queryctrl(file, fh, p); - return -ENOTTY; + if (!ops->vidioc_query_ext_ctrl) + return -ENOTTY; + + /* Simulate query_ext_ctr using query_ctrl. */ + qec.id = p->id; + ret = ops->vidioc_query_ext_ctrl(file, fh, &qec); + if (ret) + return ret; + + p->id = qec.id; + p->type = qec.type; + p->flags = qec.flags; + strscpy(p->name, qec.name, sizeof(p->name)); + switch (p->type) { + case V4L2_CTRL_TYPE_INTEGER: + case V4L2_CTRL_TYPE_BOOLEAN: + case V4L2_CTRL_TYPE_MENU: + case V4L2_CTRL_TYPE_INTEGER_MENU: + case V4L2_CTRL_TYPE_STRING: + case V4L2_CTRL_TYPE_BITMASK: + p->minimum = qec.minimum; + p->maximum = qec.maximum; + p->step = qec.step; + p->default_value = qec.default_value; + break; + default: + p->minimum = 0; + p->maximum = 0; + p->step = 0; + p->default_value = 0; + break; + } + + return 0; } static int v4l_query_ext_ctrl(const struct v4l2_ioctl_ops *ops, From patchwork Sun Feb 23 18:58:05 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ricardo Ribalda X-Patchwork-Id: 13987201 Received: from mail-qk1-f176.google.com (mail-qk1-f176.google.com [209.85.222.176]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 14CB91925B6 for ; Sun, 23 Feb 2025 18:59:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.222.176 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740337167; cv=none; b=aYfYRcOHwMylD3f/1ILFruBhC0Tcfi9JHBrMa19VGe2IGF5sy1CWZbFDHvHaiGvCuq5jx2e9V0SNQnDUJbD6yUYWPhS7byVeBhqNS16aM0UO6NturzvVfn67JMvfYgeeFh75A9UkiEjo7qWuWZWTgVMQV1uCYTgtgAMjWcE0tAg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740337167; c=relaxed/simple; bh=dOYR+rU45ZTedZeI7JX0raU+lCcGXk5RD8f4I9wTnUQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=nQ43bZ/5VTfADEKOCXx1KgYHCh0HAsW0DVVKym17pMZ5IXaBk+lJbnwWapx5cXT5dyyaWysU8IWKAWbe3VF3zB94wD2BuHJFBV+TBJSr3HXyU9NG+Vqjn+/O8eA3Z7yyp6QujcLD23CdwtAcNLnAteYRlhF1eSrtVWJnVbOQdTQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org; spf=pass smtp.mailfrom=chromium.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b=Q4a8Lvhg; arc=none smtp.client-ip=209.85.222.176 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=chromium.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b="Q4a8Lvhg" Received: by mail-qk1-f176.google.com with SMTP id af79cd13be357-7be8f281714so467358885a.1 for ; Sun, 23 Feb 2025 10:59:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1740337165; x=1740941965; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=PJWyEAap1+WfidHk2zAGjrE4DT6kHcz4NCpxCTH1+J0=; b=Q4a8LvhgAGDD3w+L3oYRKQMVnHMN9QXblFGINkt0/SXZBQJnUGEfSjl03qTzkUDzY9 QDYRiCysasnAxjiV+8hPgIouzhOwCGPPv6Vfqdkge4wKNIy4n73CbpLw432UccgrrCeP gvDHZU72we0yKXXBlkbWUkDWgijltPslmkNQM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740337165; x=1740941965; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=PJWyEAap1+WfidHk2zAGjrE4DT6kHcz4NCpxCTH1+J0=; b=WrJBXkHgS6df8rWabUFHSnzzBqHjeFMtH/OBDQ8afgPt0kqPCRCUp9CyANU0BUvfmD ZR6qFAJpWAdLP5SHRifObQWRWh3wUL/24h+FRGzWmZfs3YJ+Bhrd/b/VKZ9G2VUuSw0f u5oDPf60364mGPlmMCE1qqznX45jofZ1K1gIxiaxRgBwAULQcRD9K4Dmo5v6o0RGVCRW UB9kpOUOlbDmHFNhyfEu5q2xD6rucvJh17HwqDn+Q8mrVAjazdszuv8nSoXU3jSWa8mX jUCe5G20W/9UkBv2vM9K+ZbdRDzGb+mby8cmF9X8zuo8y0W9QU4ELb0xyfuVo5ijFQn5 801A== X-Gm-Message-State: AOJu0YyTvh14GIfW9kCzqQt+enFRAe8iIk9soFRS6lKa9VfcK8dMzFZQ 9Pq4voP2iNc1c83gjuxx1u00HZjx/Yh50xE73W95LuyERkyGuhjl1bQjjVkAIg== X-Gm-Gg: ASbGncvqk8HYLRF48uwvysUckvosEkhF+kafkULr08oxn2/h78Op7/o0MUrRYubb/Q1 lxCxpQqjZ6O8DAV4qdTP5EP3g+SEfTczLto57I06s0x0T2dXv+r3WviDgOHh2YJrZOJ4c9iEphd u/u/+7sP/5UkUDH3ZBLAQq1PKdK5jIh+1M0pNcCCzLHSXaRWbDmVKd5APyFtmRsO2cYUOdmNRy4 N01Ga8rS1RU1NK4/MLbRrZd95ZGxpKP92I3Qq4YuTJp0MX18gaN/LV1yfrSH+Krfotis965gKG1 Pk8T6PDiB/fQB+KPPq6uKsstEx7zLwIPVgg4RjWhkGg7PpowGsN0nXCvuP6D/YzCIubSiUIhIpX 1h9w= X-Google-Smtp-Source: AGHT+IFYqDOGgV28QPyX8iJ9ppiO1sSvPVW9QWBsd+01pbtAkqxHgdzjOQyBpkU8O/OVREpVDay7zA== X-Received: by 2002:a05:620a:1786:b0:7c0:c2ac:c087 with SMTP id af79cd13be357-7c0ceefa3f1mr1372556685a.19.1740337164924; Sun, 23 Feb 2025 10:59:24 -0800 (PST) Received: from denia.c.googlers.com (15.237.245.35.bc.googleusercontent.com. [35.245.237.15]) by smtp.gmail.com with ESMTPSA id af79cd13be357-7c09bf81253sm894052885a.47.2025.02.23.10.59.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Feb 2025 10:59:23 -0800 (PST) From: Ricardo Ribalda Date: Sun, 23 Feb 2025 18:58:05 +0000 Subject: [PATCH v3 02/12] media: pvrusb2: Convert queryctrl to query_ext_ctrl Precedence: bulk X-Mailing-List: linux-media@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250223-queryctrl-v3-2-4292911cab6b@chromium.org> References: <20250223-queryctrl-v3-0-4292911cab6b@chromium.org> In-Reply-To: <20250223-queryctrl-v3-0-4292911cab6b@chromium.org> To: Mauro Carvalho Chehab , Mike Isely , Laurent Pinchart , Hans de Goede , Sakari Ailus , Andy Shevchenko , Greg Kroah-Hartman , Hans Verkuil Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, linux-staging@lists.linux.dev, Ricardo Ribalda X-Mailer: b4 0.13.0 The driver was missing support for query_ext_ctrl. Instead of adding a new callback for it, replace the current implementation of queryctrl and let the ioctl framework emulate the old function. Most of the fields are identical, so the change is pretty simple. Signed-off-by: Ricardo Ribalda --- drivers/media/usb/pvrusb2/pvrusb2-v4l2.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/drivers/media/usb/pvrusb2/pvrusb2-v4l2.c b/drivers/media/usb/pvrusb2/pvrusb2-v4l2.c index d608b793fa84..7c8be6a0cf7c 100644 --- a/drivers/media/usb/pvrusb2/pvrusb2-v4l2.c +++ b/drivers/media/usb/pvrusb2/pvrusb2-v4l2.c @@ -497,8 +497,8 @@ static int pvr2_streamoff(struct file *file, void *priv, enum v4l2_buf_type i) return pvr2_hdw_set_streaming(hdw, 0); } -static int pvr2_queryctrl(struct file *file, void *priv, - struct v4l2_queryctrl *vc) +static int pvr2_query_ext_ctrl(struct file *file, void *priv, + struct v4l2_query_ext_ctrl *vc) { struct pvr2_v4l2_fh *fh = file->private_data; struct pvr2_hdw *hdw = fh->channel.mc_head->hdw; @@ -521,13 +521,16 @@ static int pvr2_queryctrl(struct file *file, void *priv, } pvr2_trace(PVR2_TRACE_V4LIOCTL, - "QUERYCTRL id=0x%x mapping name=%s (%s)", + "QUERYEXTCTRL id=0x%x mapping name=%s (%s)", vc->id, pvr2_ctrl_get_name(cptr), pvr2_ctrl_get_desc(cptr)); strscpy(vc->name, pvr2_ctrl_get_desc(cptr), sizeof(vc->name)); vc->flags = pvr2_ctrl_get_v4lflags(cptr); pvr2_ctrl_get_def(cptr, &val); vc->default_value = val; + vc->nr_of_dims = 0; + vc->elems = 1; + vc->elem_size = 4; switch (pvr2_ctrl_get_type(cptr)) { case pvr2_ctl_enum: vc->type = V4L2_CTRL_TYPE_MENU; @@ -549,7 +552,7 @@ static int pvr2_queryctrl(struct file *file, void *priv, break; default: pvr2_trace(PVR2_TRACE_V4LIOCTL, - "QUERYCTRL id=0x%x name=%s not mappable", + "QUERYEXTCTRL id=0x%x name=%s not mappable", vc->id, pvr2_ctrl_get_name(cptr)); return -EINVAL; } @@ -812,7 +815,7 @@ static const struct v4l2_ioctl_ops pvr2_ioctl_ops = { .vidioc_try_fmt_vid_cap = pvr2_try_fmt_vid_cap, .vidioc_streamon = pvr2_streamon, .vidioc_streamoff = pvr2_streamoff, - .vidioc_queryctrl = pvr2_queryctrl, + .vidioc_query_ext_ctrl = pvr2_query_ext_ctrl, .vidioc_querymenu = pvr2_querymenu, .vidioc_g_ctrl = pvr2_g_ctrl, .vidioc_s_ctrl = pvr2_s_ctrl, From patchwork Sun Feb 23 18:58:06 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ricardo Ribalda X-Patchwork-Id: 13987202 Received: from mail-qk1-f181.google.com (mail-qk1-f181.google.com [209.85.222.181]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D972220C005 for ; Sun, 23 Feb 2025 18:59:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.222.181 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740337169; cv=none; b=Xv/Grn6HawSOkmvAq7MN8LSNg6UtfvpVGQjTQQ9LZevl8Kie8thep4uv3iP74mkd3Yjzye5U2iWYWP2SQayKaciPO2rz+fFVFRbeXxPsH16MO1nGym6u4Fpb+ytlmUkD4+ACEdgNvEMFz6D19Etf4clnvcHlyb66lTDWyGcmY4A= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740337169; c=relaxed/simple; bh=myXjIaGjfoOSk4gWvfNUCnPKOkUfNfQoYFyPFWxU7TM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Vd1CipRaah7Kqo3K6hgIBz5w0y/L9xd4H6jHfm3uzytg1gjmvUaVvTb5RESx7YV9Q4ZRf2dvdC6WPW2DikcIQ3Ai+OjtCSjuxMXRNGc7z7+AayLgyNEsuZmtUAk0hdzlgSaFBt3bsFRNJMd1Pa63VDaUMaiyFEOxkTWOagWB5G0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org; spf=pass smtp.mailfrom=chromium.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b=Y7LuKBfw; arc=none smtp.client-ip=209.85.222.181 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=chromium.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b="Y7LuKBfw" Received: by mail-qk1-f181.google.com with SMTP id af79cd13be357-7c2303a56d6so22253285a.3 for ; Sun, 23 Feb 2025 10:59:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1740337167; x=1740941967; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=cnN0g4zN2JxT7rEykWa86K6e7OYYbd0erUw+cYCyMXw=; b=Y7LuKBfwBVse43QirI5wG+6px8nUAsOJqsT8yGvRBpoHvnxwzqtEutU61I8ka55yEB iyj+6olqdnwl3hUti4Zrc+pHYs8gQEljgeXIGMdl5zs0q3FCwXwjRld7mxaZMT3ElAhX 6dPV9CInYQvi4zuyiPvm5/xjaqy/UlrZ58fAc= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740337167; x=1740941967; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=cnN0g4zN2JxT7rEykWa86K6e7OYYbd0erUw+cYCyMXw=; b=ksVtM82OsWycCez21xiDdkro5r4hmFc334xLyIzyBrLAwOug9RgYTXUU7pMTc8FaIf 0L2KTXOjLWE1S2a2ej6ehekgWYoe4kSDm/hw3yqRMtpKK62+teE9vZHGKUU65n7pOzXG kgjW6kZev8a81Z8f3OPCz04bRSzYg1kj3q/qbb56lFSLH1GqUhlc4C8oPVWSYVQmOtP1 EgwW41YGOFcQzoQLltjSuOIFw6pWXjFU7o/IUcADO6hQLRNHacMcBIzUVqCd+vQZFjCv PZFu4+zldMdzxHtsPjuSRyCG5mWnXhp/eI1vOW8rpk6R4/MHTTyt9L+LfON1HCVfFe1t 6wfQ== X-Gm-Message-State: AOJu0YyxNi15LZ0ewvK4+CHmkpmerICcLiGy3RJn+VSXkm1LBSAuBI0h xIvOazWcXXAOK/v0QWYybVQM15eDLNaPUN0tyTWZzlDZbJDUeFi/KpUpo7jW0A== X-Gm-Gg: ASbGncvjek2rxgku0tE3TqvFfUiJCXZdvVK+AwzxD0zVjokmAouPp+AeiM3LI0zMdw5 OXkZLXkcRJHSx2YCMWNQd91R/ims9kF12E5kdGuRioDXC3MFcLx99Jy+aSL3MbF5CpRCYyY/N8i ZaRnGlbDsOw8pCVnT/ixXgVXyw41RFkz38arunb5KAWoomOg9KOtMRj18Cw6MslNdOhLfpVTPI6 GP+Ya+OclTCJnT6cjzCGxgfEcHepN/NtMY3l3VcrRj+EXxpV7pvO5s3f+B2JLY/Mzqraoi7B99A KuWm9amGPxKVhaQSaaaaqDhzQMBJe4jwNMqngwQtZ7UpFauJIt0NdtdPEU/Skrdg64zaXkNiXPM ZrYw= X-Google-Smtp-Source: AGHT+IG6XQAhoRI9GvPepX/CjaG7nv07d/LfoiHN+LEQpa+mFjWVBGB/SkS22EGTKBolEf1SeYC0Ng== X-Received: by 2002:a05:620a:1a1c:b0:7c0:c214:f2d with SMTP id af79cd13be357-7c0cf8ea897mr1355134285a.31.1740337166661; Sun, 23 Feb 2025 10:59:26 -0800 (PST) Received: from denia.c.googlers.com (15.237.245.35.bc.googleusercontent.com. [35.245.237.15]) by smtp.gmail.com with ESMTPSA id af79cd13be357-7c09bf81253sm894052885a.47.2025.02.23.10.59.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Feb 2025 10:59:25 -0800 (PST) From: Ricardo Ribalda Date: Sun, 23 Feb 2025 18:58:06 +0000 Subject: [PATCH v3 03/12] media: pvrusb2: Remove g/s_ctrl callbacks Precedence: bulk X-Mailing-List: linux-media@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250223-queryctrl-v3-3-4292911cab6b@chromium.org> References: <20250223-queryctrl-v3-0-4292911cab6b@chromium.org> In-Reply-To: <20250223-queryctrl-v3-0-4292911cab6b@chromium.org> To: Mauro Carvalho Chehab , Mike Isely , Laurent Pinchart , Hans de Goede , Sakari Ailus , Andy Shevchenko , Greg Kroah-Hartman , Hans Verkuil Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, linux-staging@lists.linux.dev, Ricardo Ribalda X-Mailer: b4 0.13.0 The ioctl helpers can emulate g/s_ctrl with g/s_ext_ctrl. Simplify the code. Signed-off-by: Ricardo Ribalda --- drivers/media/usb/pvrusb2/pvrusb2-v4l2.c | 27 --------------------------- 1 file changed, 27 deletions(-) diff --git a/drivers/media/usb/pvrusb2/pvrusb2-v4l2.c b/drivers/media/usb/pvrusb2/pvrusb2-v4l2.c index 7c8be6a0cf7c..ad38e1240541 100644 --- a/drivers/media/usb/pvrusb2/pvrusb2-v4l2.c +++ b/drivers/media/usb/pvrusb2/pvrusb2-v4l2.c @@ -574,31 +574,6 @@ static int pvr2_querymenu(struct file *file, void *priv, struct v4l2_querymenu * return ret; } -static int pvr2_g_ctrl(struct file *file, void *priv, struct v4l2_control *vc) -{ - struct pvr2_v4l2_fh *fh = file->private_data; - struct pvr2_hdw *hdw = fh->channel.mc_head->hdw; - int val = 0; - int ret; - - ret = pvr2_ctrl_get_value(pvr2_hdw_get_ctrl_v4l(hdw, vc->id), - &val); - vc->value = val; - return ret; -} - -static int pvr2_s_ctrl(struct file *file, void *priv, struct v4l2_control *vc) -{ - struct pvr2_v4l2_fh *fh = file->private_data; - struct pvr2_hdw *hdw = fh->channel.mc_head->hdw; - int ret; - - ret = pvr2_ctrl_set_value(pvr2_hdw_get_ctrl_v4l(hdw, vc->id), - vc->value); - pvr2_hdw_commit_ctl(hdw); - return ret; -} - static int pvr2_g_ext_ctrls(struct file *file, void *priv, struct v4l2_ext_controls *ctls) { @@ -817,8 +792,6 @@ static const struct v4l2_ioctl_ops pvr2_ioctl_ops = { .vidioc_streamoff = pvr2_streamoff, .vidioc_query_ext_ctrl = pvr2_query_ext_ctrl, .vidioc_querymenu = pvr2_querymenu, - .vidioc_g_ctrl = pvr2_g_ctrl, - .vidioc_s_ctrl = pvr2_s_ctrl, .vidioc_g_ext_ctrls = pvr2_g_ext_ctrls, .vidioc_s_ext_ctrls = pvr2_s_ext_ctrls, .vidioc_try_ext_ctrls = pvr2_try_ext_ctrls, From patchwork Sun Feb 23 18:58:07 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ricardo Ribalda X-Patchwork-Id: 13987203 Received: from mail-qk1-f169.google.com (mail-qk1-f169.google.com [209.85.222.169]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2EF6320C47C for ; Sun, 23 Feb 2025 18:59:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.222.169 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740337171; cv=none; b=Zm3P8dRNFHr8ivJJ6uZk0BLYfrhTKoKiRStxqdkk+GMCnj9tvYnZY5dz4ewTM3ZQbCa/S+ugvB7d4ewEEDDbJwH+WCExiIEusu43hcOaRkylIDS+81hIQvceMHAO5kMGq/UJJ+xq1H88rabJZ/u2bQ98f1TZ/6n2tR37EDssJPs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740337171; c=relaxed/simple; bh=xHh1GodNV49mVOXTDlr/kmEEgfRtOkAHCbSYPASBaZQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=IPYafXAoLwTZ2kPZnUn7qPxPUu7Bm837zQXADHH86NE3ZUoVIUjiq6cwVZGsxNj88CXva8jBgpfAlz7PqcoUjb0vt5TXFKhNVmAKC6wVgbk3khklFEjhsYP3m8ZbSYvA0nmGkZOC2A1N0N7P5reUnytFUkM4XfegOn58bAQtA7Y= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org; spf=pass smtp.mailfrom=chromium.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b=Me+M/EUD; arc=none smtp.client-ip=209.85.222.169 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=chromium.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b="Me+M/EUD" Received: by mail-qk1-f169.google.com with SMTP id af79cd13be357-7c0b0ca6742so419288385a.0 for ; Sun, 23 Feb 2025 10:59:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1740337169; x=1740941969; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=uRb6n6dm7lw2Z9XBFIWilv+DzQlMIIsiVy3tu994jwM=; b=Me+M/EUDOEG1Slj5OTfOzycsg8s37tnkh2Z5MeN+oTTtcq9LpUHOrL5Pxk1JOMaHbw WDb2ABmVZ2vDaynXy5humC9f40EbigNNIh86yJK+yCjpzYInbrZGaakjQAy3zXY90XkM w/wlk3E83eoAM8j0mLtW7WPfvtdwIP6ItMuoE= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740337169; x=1740941969; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=uRb6n6dm7lw2Z9XBFIWilv+DzQlMIIsiVy3tu994jwM=; b=Ui8thLa5PYER+GwMydvik4PE4VcW3pinlECYtQkSOdYIJjlk0DlEI+GJY38peNr0NE FXu3QucvaKV3ARYOKhUzrVUmweeDHNpwh+koDzFi677HDPOjAe7YbREHiRJLbbqoDt1B U0pufCxrL5qxotnL27MhLfoLbc1zpDjNs1pYF0fGfxgZrP8DMc0Y9hExlZj15WIZH8PD VTID25y/vL5Sk9JxbEeCpXwJQlYBCTAM1dbPW3aot+JUlEvNPZhwQ5yVN6cOpAU7yktO IVPmFXS79os3kJVcyYi0wAP50b3ippaxRlgXj3/PQGkDiz5fPY3SnTfCijTkiHrF8KwJ VHAg== X-Gm-Message-State: AOJu0Yy/qa7Afmyw4xYbmeBAl8O4sVV0JJ76e6fWKePTYTy/iTVR6Sh1 Ov77fqrsjIBS8h9GawBBVAT8icdQeH45iJ1LsK0a4BRJ24f7NA8tmeRSPeWqFw== X-Gm-Gg: ASbGncsV+08asMsxi8hqV2JX63mBM4HgV/5quSl9rcmuEVeXvaOTKu+UBhzl8OCgj/j cDtPSpdATtsTNxgjf7iYNMlPBjsvUg07npgukEs6ws7kWRpvXjdM6XGt83UCOdiMfoyRBdhehtI BCwMvmAgDXfxq0jITYtl9vLXQgGk/f4LN861LHnkpG/VZJgR4zcL51zKLkg+mFUvT3uQ6hbcGad ryuRrr7Uflv+T9bJb6AiK/rTPJsZ5DTiwmqO3zLVer1VSZI9egNC+ye/ycyOLZZbeAeuF7Z9y9C E7o+EXsXxeEdtuO+Y96auTkcoMM4dE+Q5ovUFkAmq30/vsZXEQhhcLQXN1IheRVMUAMARVWgnsa O+44= X-Google-Smtp-Source: AGHT+IFIm1syTpeE2i1EYWI3iEtSyliT4ATG6d2xnrdk5fvsT0z7+hE4dqtz3meToG77GzeKzuMC5Q== X-Received: by 2002:a05:620a:444c:b0:7c0:7a0b:3727 with SMTP id af79cd13be357-7c0ceefd391mr1224831785a.16.1740337169084; Sun, 23 Feb 2025 10:59:29 -0800 (PST) Received: from denia.c.googlers.com (15.237.245.35.bc.googleusercontent.com. [35.245.237.15]) by smtp.gmail.com with ESMTPSA id af79cd13be357-7c09bf81253sm894052885a.47.2025.02.23.10.59.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Feb 2025 10:59:27 -0800 (PST) From: Ricardo Ribalda Date: Sun, 23 Feb 2025 18:58:07 +0000 Subject: [PATCH v3 04/12] media: uvcvideo: Remove vidioc_queryctrl Precedence: bulk X-Mailing-List: linux-media@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250223-queryctrl-v3-4-4292911cab6b@chromium.org> References: <20250223-queryctrl-v3-0-4292911cab6b@chromium.org> In-Reply-To: <20250223-queryctrl-v3-0-4292911cab6b@chromium.org> To: Mauro Carvalho Chehab , Mike Isely , Laurent Pinchart , Hans de Goede , Sakari Ailus , Andy Shevchenko , Greg Kroah-Hartman , Hans Verkuil Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, linux-staging@lists.linux.dev, Ricardo Ribalda X-Mailer: b4 0.13.0 It can be implemented by the v4l2 ioctl framework using vidioc_query_ext_ctrl. Signed-off-by: Ricardo Ribalda --- drivers/media/usb/uvc/uvc_v4l2.c | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/drivers/media/usb/uvc/uvc_v4l2.c b/drivers/media/usb/uvc/uvc_v4l2.c index 93c6cdb23881..89052455ed50 100644 --- a/drivers/media/usb/uvc/uvc_v4l2.c +++ b/drivers/media/usb/uvc/uvc_v4l2.c @@ -963,15 +963,6 @@ static int uvc_ioctl_s_input(struct file *file, void *fh, unsigned int input) return ret; } -static int uvc_ioctl_queryctrl(struct file *file, void *fh, - struct v4l2_queryctrl *qc) -{ - struct uvc_fh *handle = fh; - struct uvc_video_chain *chain = handle->chain; - - return uvc_query_v4l2_ctrl(chain, qc); -} - static int uvc_ioctl_query_ext_ctrl(struct file *file, void *fh, struct v4l2_query_ext_ctrl *qec) { @@ -1491,7 +1482,6 @@ const struct v4l2_ioctl_ops uvc_ioctl_ops = { .vidioc_enum_input = uvc_ioctl_enum_input, .vidioc_g_input = uvc_ioctl_g_input, .vidioc_s_input = uvc_ioctl_s_input, - .vidioc_queryctrl = uvc_ioctl_queryctrl, .vidioc_query_ext_ctrl = uvc_ioctl_query_ext_ctrl, .vidioc_g_ext_ctrls = uvc_ioctl_g_ext_ctrls, .vidioc_s_ext_ctrls = uvc_ioctl_s_ext_ctrls, From patchwork Sun Feb 23 18:58:08 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ricardo Ribalda X-Patchwork-Id: 13987204 Received: from mail-qk1-f176.google.com (mail-qk1-f176.google.com [209.85.222.176]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8C55520D4EE for ; Sun, 23 Feb 2025 18:59:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.222.176 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740337174; cv=none; b=nlL0tomNm5Z2mUljQL1Y5wPS6jIk4yIA/hJsXLNdIZoA3R037Hwtuy9L9o7yuGq1lOQMyx+KOfesqXw4cyloU0xMVUOjvjmBpWvLONsqhYXtqE7/9RL9TcGt58yH/aiP3OoacexmChleuKcW7l+Y5jDKsb73oeQb/8F3KSn6+Sc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740337174; c=relaxed/simple; bh=+FQk73Re7Vj5uP8e4zt7dSl+Ft1aZSIU+rolZ0DzE5I=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=GWpsABtCpLB/N56Uzz2OaW1rvXjt4G/3M7tU7mHcMPuH8Al1140jtZkE4GLGeM1n2vq6SrnMzRbEXn+NULZjqc/K7ATyEEftqwqUWCYU6wccaoms5GlxAzv4ksn4x/2GpyngO3EbgfOVZBK+ogKmq78aKvBC/f+CXxc0hVaGFX8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org; spf=pass smtp.mailfrom=chromium.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b=bkMaNGH+; arc=none smtp.client-ip=209.85.222.176 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=chromium.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b="bkMaNGH+" Received: by mail-qk1-f176.google.com with SMTP id af79cd13be357-7c08b14baa9so352218485a.3 for ; Sun, 23 Feb 2025 10:59:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1740337171; x=1740941971; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=8IZ/POm13BMEX8p04+c3Nhi5+imiB9PsNNFLrPKcpkU=; b=bkMaNGH+TWmaiA27q/9/D2BTliMN6XtOlLEzbZXC9WEqOgg18K4dJFtDQCTnbLe4vV nDYI0VzYpEpk/3QSiyFRUfM2nsjqmYnkLFp0nZIvf/pWsPjrfY35XdCOocqfwfc5g4Kc hJe9HJvYWoVL9ac48R4hQaqDtn/glaouj/akY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740337171; x=1740941971; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=8IZ/POm13BMEX8p04+c3Nhi5+imiB9PsNNFLrPKcpkU=; b=p88+ecoh2jYR+i5/RRMS2UcdBD4nlPJjcYRcDRho1bN33gndDpL7vFJmPP3Fkur/NZ 4j8LAoXKgysZ6Ern0oAjfriD7F1l7/B3wd3X570ciJGE6bacpgNIAt2o1JZrX6V/R1Q6 9Jbga3MSAuR9WTppaPPVwttTybnHhDxYmbInHtpewk2KhBcjUyyIsUtpc2SrQ6uV/6hm FzzzSwoM+qlRaZrnn45yKnlal/aJ2rIRe8yvBO7Mxbno49bIBkDNd/QzrlbebRGo3o0o lT2T2czm8XqOvzqrHxDBzxJXs5PuOR/yhBnJDwJ0voi/DJuBZ7NRnbhMPFYu5XixrVNE q7PA== X-Gm-Message-State: AOJu0YwXLR7loQjWN2Y+/ywG8zqNhIiDA0TAv03ySCgKbwAM3ZWrnj8o 4dFvEmVvj0TNmXykyefzb8F96Ybm7aqDgrYvyejObQ3C++BJXBDITX9248iPfw== X-Gm-Gg: ASbGncsZMdimuka4u2qwi46aT+BF3tKiIcinWVtWL88VH2r5zF0eRzLs6tOBQEneY7n 2I2YB19agelIWZCHAOS3OOEr58rlgnxptCWRTF84PTuDFBPLQgJ/DCGJH/5ISMzmhR1+0nuo3gc XpPqFuj98GgDJOVkV+nJHa6GX2CToyz6b5LuFnwhz0jUVj+tDyPnwEl4oMc34fA9uOoT585T9ou QXmztn8ucTwQz1D6XmsIppFM0drMWPgjWWwZFKeXC5taO9MqMsivEa3jw8VVpaiR2lJ4pB7YIcp hXV1o2RMjoTUUcGKFi7lSa9Sdv0ozIaUltWqzx0Xvq9xybPjB68HvIskKB/nOKlsUvaS8b3lOH3 Uatc= X-Google-Smtp-Source: AGHT+IFfEI9iYEbJVGs23xVGmjulSbd3/xfIZiF/IMBZDKee+F4TF5guUHDs7mH9mdkDy3gDc+h3Sw== X-Received: by 2002:a05:620a:4688:b0:7c0:c15c:1177 with SMTP id af79cd13be357-7c0cef10115mr1616776085a.30.1740337171454; Sun, 23 Feb 2025 10:59:31 -0800 (PST) Received: from denia.c.googlers.com (15.237.245.35.bc.googleusercontent.com. [35.245.237.15]) by smtp.gmail.com with ESMTPSA id af79cd13be357-7c09bf81253sm894052885a.47.2025.02.23.10.59.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Feb 2025 10:59:30 -0800 (PST) From: Ricardo Ribalda Date: Sun, 23 Feb 2025 18:58:08 +0000 Subject: [PATCH v3 05/12] media: atomisp: Replace queryctrl with query_ext_ctrl Precedence: bulk X-Mailing-List: linux-media@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250223-queryctrl-v3-5-4292911cab6b@chromium.org> References: <20250223-queryctrl-v3-0-4292911cab6b@chromium.org> In-Reply-To: <20250223-queryctrl-v3-0-4292911cab6b@chromium.org> To: Mauro Carvalho Chehab , Mike Isely , Laurent Pinchart , Hans de Goede , Sakari Ailus , Andy Shevchenko , Greg Kroah-Hartman , Hans Verkuil Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, linux-staging@lists.linux.dev, Ricardo Ribalda X-Mailer: b4 0.13.0 The ioctl framework provides an emulator of queryctrl using query_ext_ctrl. Replace our implementation of queryctrl to support both. Now that we are at it: - Add comment about missing functionality. - Remove superfluous clear of reserved[0]. - Remove ret var. Signed-off-by: Ricardo Ribalda --- drivers/staging/media/atomisp/pci/atomisp_ioctl.c | 33 ++++++++++++----------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/drivers/staging/media/atomisp/pci/atomisp_ioctl.c b/drivers/staging/media/atomisp/pci/atomisp_ioctl.c index 1a960a01854f..6b84bd8e6cf3 100644 --- a/drivers/staging/media/atomisp/pci/atomisp_ioctl.c +++ b/drivers/staging/media/atomisp/pci/atomisp_ioctl.c @@ -34,7 +34,7 @@ static const char *CARD = "ATOM ISP"; /* max size 31 */ * FIXME: ISP should not know beforehand all CIDs supported by sensor. * Instead, it needs to propagate to sensor unknown CIDs. */ -static struct v4l2_queryctrl ci_v4l2_controls[] = { +static struct v4l2_query_ext_ctrl ci_v4l2_controls[] = { { .id = V4L2_CID_AUTO_WHITE_BALANCE, .type = V4L2_CTRL_TYPE_BOOLEAN, @@ -1140,31 +1140,34 @@ static int atomisp_s_ctrl(struct file *file, void *fh, /* * To query the attributes of a control. - * applications set the id field of a struct v4l2_queryctrl and call the + * applications set the id field of a struct v4l2_query_ext_ctrl and call the * this ioctl with a pointer to this structure. The driver fills * the rest of the structure. */ -static int atomisp_queryctl(struct file *file, void *fh, - struct v4l2_queryctrl *qc) +static int atomisp_query_ext_ctrl(struct file *file, void *fh, + struct v4l2_query_ext_ctrl *qc) { - int i, ret = -EINVAL; + int i; + /* TODO: implement V4L2_CTRL_FLAG_NEXT_CTRL */ if (qc->id & V4L2_CTRL_FLAG_NEXT_CTRL) - return ret; + return -EINVAL; for (i = 0; i < ctrls_num; i++) { if (ci_v4l2_controls[i].id == qc->id) { - memcpy(qc, &ci_v4l2_controls[i], - sizeof(struct v4l2_queryctrl)); - qc->reserved[0] = 0; - ret = 0; - break; + *qc = ci_v4l2_controls[i]; + qc->elems = 1; + qc->elem_size = 4; + return 0; } } - if (ret != 0) - qc->flags = V4L2_CTRL_FLAG_DISABLED; - return ret; + /* + * This is probably not needed, but this flag has been set for + * many kernel versions. Leave it to avoid breaking any apps. + */ + qc->flags = V4L2_CTRL_FLAG_DISABLED; + return -EINVAL; } static int atomisp_camera_g_ext_ctrls(struct file *file, void *fh, @@ -1561,7 +1564,7 @@ const struct v4l2_ioctl_ops atomisp_ioctl_ops = { .vidioc_enum_input = atomisp_enum_input, .vidioc_g_input = atomisp_g_input, .vidioc_s_input = atomisp_s_input, - .vidioc_queryctrl = atomisp_queryctl, + .vidioc_query_ext_ctrl = atomisp_query_ext_ctrl, .vidioc_s_ctrl = atomisp_s_ctrl, .vidioc_g_ctrl = atomisp_g_ctrl, .vidioc_s_ext_ctrls = atomisp_s_ext_ctrls, From patchwork Sun Feb 23 18:58:09 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ricardo Ribalda X-Patchwork-Id: 13987205 Received: from mail-qk1-f182.google.com (mail-qk1-f182.google.com [209.85.222.182]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D39BB20D513 for ; Sun, 23 Feb 2025 18:59:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.222.182 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740337176; cv=none; b=Ja0wt1lF97ZREE3XuqJZiCwzF/1SaPA2oOSL1ku7+w47xxxf02N8Gpmtzjj9sN1gh74VieOjeOWw2YHcoj7fR37sLRJm53zQ+A7nCuq0f+pgePxo7P+Lq/V6EHP097gY94QFbxPqj2vGCZeD1y9i8K/ZS9hCSn16irVRlh5T19M= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740337176; c=relaxed/simple; bh=lWWjDY2I/8kPY7a6V4ZbdxW4J2FNahz8aBfrPuD04k4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=FjZoFOSc1vjT4xZi2a2WRSR/P+zfB2Sh+Hx+UQj5CSqJpFVnF3VSvo0jpfRa6WEPzm4kqPBSzR4Qhsn1/udfEphh6gwxZVNaGnV/rGKuNP0uFBLUr5F/yeF/X4EdfRNmBOl31yCLWJpQ7j2DDKQqBVzMf8kHI/ZLoQSv1xXt7KE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org; spf=pass smtp.mailfrom=chromium.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b=cK1JYMk0; arc=none smtp.client-ip=209.85.222.182 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=chromium.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b="cK1JYMk0" Received: by mail-qk1-f182.google.com with SMTP id af79cd13be357-7c07b65efeeso372201185a.2 for ; Sun, 23 Feb 2025 10:59:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1740337174; x=1740941974; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=Y9BY7E7vHC4YHTi+FAvg+DDleZXfy5R/P4AUAZGGpCU=; b=cK1JYMk09PrJTEtONWSosnmUSUqqpTW3w+tbk+yuC+1yYsFMJWb5dzRieytzUuuwwN wa1YdS081INLyZyycrT021sjmFP6VhYgt3qbLg6XtQLYcui0iigtEqZH36KCvHU0dDRr xz8kZPcP7O2RXprL910DlSg7K9MN+VYUptPE4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740337174; x=1740941974; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Y9BY7E7vHC4YHTi+FAvg+DDleZXfy5R/P4AUAZGGpCU=; b=E5X4xllFZu/H5hp19qKiDlgJa0XieIYDAW3pACmOyccAOBuJyH4J8BGZ0FcIjmo3Gs rrU/EnxKJ6Ih9sjGemlQtwsTawj/elLB8FYl5F+JBfYrOGhOrgTys6xTHectUKGfxdH3 amOk2zsydKVxpXjlCbg1+F90CNjyY011bT/LC8bQYZGuK4+uPSm66hR/3ukU3DCl8Ptu HNCTe1kHe0BK40SVVcE0F1ZpfJnsH6R/YHYcabdTp7jS9SjGJrNavzdYmNgHmRc8oIN6 YRY1ClPh+wAD0GksisM/atxmBH7lKYJ8sxp0bhUhgpm0CKVvUr6RsuNsRtfYgf3YAr7U QDsQ== X-Gm-Message-State: AOJu0YxSC9bV4XrfYDgQQaEFtGq6IU4M2hIMfRqzOupdfxy68n9cYHbr xkGu/1aNI6dLgN3MqDv1KrvVUVqJoxicqF5F8EkEQx7opLlEBVUaA6rM88Rf2g== X-Gm-Gg: ASbGncvr+2/qffw0neEFeuWCSdUpW7ePfyZ6jc5aUYpUwHj5YaV33oD/qp6DtiFAg7W QtmoLYeImgOnHQLLVY6Tt6QCGXUYB70A7sBFr9hgKIaRg9wVlbv95wtVpBcpTgt4mjhOGJ+cr5u lUuewt7zfx/wqFhvLC191wFlkQn2+Z8bgtCzddmVQuYFUSjMiKFpC4DYOcvEvwhuVZYGUMHSO5F gQyR7gKjsZ+shC2OfszbusA1f6Jilc5D/Uap+RsXmsrb/9CgDjUlkbvJPXTNAiQJP7UFa13ZnU5 Ygwp9qVC3fxrH6M8BV9EbZIrWIYzj44W/TXugIMQBM+Zz7HFtoCvXbTSAxu4SBgmIbky8h0Lzuj Ua6g= X-Google-Smtp-Source: AGHT+IG41KzlGhpkWHI86/yfKt+dY9ha4b9ql5LXo9JQXG1jbyYnUpn/M+Qt6Q5FogdDhwrNVGX+Bg== X-Received: by 2002:a05:620a:44c6:b0:7c0:c2d7:5f2d with SMTP id af79cd13be357-7c0cef0e576mr1229924085a.28.1740337173910; Sun, 23 Feb 2025 10:59:33 -0800 (PST) Received: from denia.c.googlers.com (15.237.245.35.bc.googleusercontent.com. [35.245.237.15]) by smtp.gmail.com with ESMTPSA id af79cd13be357-7c09bf81253sm894052885a.47.2025.02.23.10.59.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Feb 2025 10:59:32 -0800 (PST) From: Ricardo Ribalda Date: Sun, 23 Feb 2025 18:58:09 +0000 Subject: [PATCH v3 06/12] media: atomisp: Remove vidioc_g/s callback Precedence: bulk X-Mailing-List: linux-media@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250223-queryctrl-v3-6-4292911cab6b@chromium.org> References: <20250223-queryctrl-v3-0-4292911cab6b@chromium.org> In-Reply-To: <20250223-queryctrl-v3-0-4292911cab6b@chromium.org> To: Mauro Carvalho Chehab , Mike Isely , Laurent Pinchart , Hans de Goede , Sakari Ailus , Andy Shevchenko , Greg Kroah-Hartman , Hans Verkuil Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, linux-staging@lists.linux.dev, Ricardo Ribalda X-Mailer: b4 0.13.0 The v4l2 ioctl framework can implement vidioc_g/s_ctrl with vidioc_g/s_ext_ctrl() and we provide those. These are the last references of vidioc_s/g_ctrl in the codebase. We can attempt to remove them now. Signed-off-by: Ricardo Ribalda --- drivers/staging/media/atomisp/pci/atomisp_ioctl.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/drivers/staging/media/atomisp/pci/atomisp_ioctl.c b/drivers/staging/media/atomisp/pci/atomisp_ioctl.c index 6b84bd8e6cf3..1fb2ba819de3 100644 --- a/drivers/staging/media/atomisp/pci/atomisp_ioctl.c +++ b/drivers/staging/media/atomisp/pci/atomisp_ioctl.c @@ -1565,8 +1565,6 @@ const struct v4l2_ioctl_ops atomisp_ioctl_ops = { .vidioc_g_input = atomisp_g_input, .vidioc_s_input = atomisp_s_input, .vidioc_query_ext_ctrl = atomisp_query_ext_ctrl, - .vidioc_s_ctrl = atomisp_s_ctrl, - .vidioc_g_ctrl = atomisp_g_ctrl, .vidioc_s_ext_ctrls = atomisp_s_ext_ctrls, .vidioc_g_ext_ctrls = atomisp_g_ext_ctrls, .vidioc_enum_framesizes = atomisp_enum_framesizes, From patchwork Sun Feb 23 18:58:10 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ricardo Ribalda X-Patchwork-Id: 13987206 Received: from mail-qk1-f169.google.com (mail-qk1-f169.google.com [209.85.222.169]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5EB1820E018 for ; Sun, 23 Feb 2025 18:59:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.222.169 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740337179; cv=none; b=X9xI/hJvDS/0zdTHSgMUlM8zbOjqUFZSG/sWXdJz7qqyby6CD6LggQ0Mm2+sVza0IGdG7ZyzrgGHYMvuhfFkeN3utXfO8DHXjJG5EfjkS4cfeN9paeFu80MEw96LaXRBlSKB+6JFE4f0Vz1InQSPsLnu3f7mAmfUIzN3jhyz15E= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740337179; c=relaxed/simple; bh=6eScQ+yILkmrR5/v9Ls6gwtXx6JH8fWeq4Wm72IvMxc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ug0T1lPcOYpGjDu+HjV6f0tA85iKTZPbG2USxgGAsEykUvNUcBj7Y7/zD+lpEAS8SIGNA1WT/cposqFagoMeNAVY/Kym9oAMgsr3G5ihJxqZr71Il+G975CDg59Z1QIjqgcThcvd3duyQMV0rFbVtlicUoQ7uaOlrnB2507geeg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org; spf=pass smtp.mailfrom=chromium.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b=eS7BxmcT; arc=none smtp.client-ip=209.85.222.169 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=chromium.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b="eS7BxmcT" Received: by mail-qk1-f169.google.com with SMTP id af79cd13be357-7c0892e4b19so460535085a.3 for ; Sun, 23 Feb 2025 10:59:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1740337176; x=1740941976; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=XqSkdPwdXz1L9xwrOG1KS2QGCidHxC0xW5jcZHcDLmY=; b=eS7BxmcT7MFxFMy8QvB0dLbA0M9nZZCgk6zYXvcIuqS4SFmqv8J5WdQMnJiX2FuJoQ sP4UewsEdToJcHo0mpLMZ0/VlObfb5sxbvECEoBczm0vM7aWFp7xyJvkkQq2YSHLZnV2 3T+7/spu4St5ZStxQTaD6Gwp9cmVRkFUtP+hU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740337176; x=1740941976; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=XqSkdPwdXz1L9xwrOG1KS2QGCidHxC0xW5jcZHcDLmY=; b=QZCNpA5qE+nvwkPpOvsIn6nA5zhSkN2n9uGwJ2Dr1YprqSJQnLmVwmYeHLvhkiRX3a uoR/UpXH1W1vqnmvR7cvG3BBApJHImUZvnPxt6+1ophFLd9WjWKCsJq+3pewT8DuOWYq NAlDlPYKlISOc40Wvq3uBVsNTVX6CiX98xwECGUUFBHNsR0wWRvSt1hW9FdIEHf+4jIm smg+dUSLa4BAwjl/Dde9I/sAUx72TWEWMOXT5WsxGlf+J/ukOXyQyp68rO+T+sD4UlIV e9gXeXzGbxdM5xCaLIqbmg3TQf0VPjMVr9YTb9B9DRUYnKNE2gDLiqBWL7hXwwEayzUf yyNQ== X-Gm-Message-State: AOJu0YxbGeoJJFoCLqyWCFFiwV8wpotWb6u4ktuZcQzyABKhx+UnLojU ByHt8FCkbHl3GSfpbb8PFI2U/tJZnFbhkPU+FqtndzdZk14HW9LVtIv9upLTnQ== X-Gm-Gg: ASbGnctedrgtzXckP1mFdGPKUsJGXp1MuBMss/g0HnYNKOfmMmvxLG95AXK1pemQgop OVTx/SGRaJs8NRzO82XAKRkWZeEqsOVfK6DtsXYA74QsGywNxAzwXTEa5qtCYniqtjxGRhwPWVh zDSOwASd0RuzwbP7lwPzptWWwKfJLMbKVCUgM175mh/cgiLa+Gl0h6M27n53NRb4rWbQSXM28es bP4ca916qgbQ+92fBwus3oLZHQLlHDWYEWsxkbG4mQkWc6MWKPElE8sTOhpHblCJibGf3vF/vvn iRG3TwAt+SHO+7LTx0g68Ttnk9/S5Yns/es+hbtwvYS5f1VdHVEhe2VhEnPImpebjLEcCdL2lCe h58Q= X-Google-Smtp-Source: AGHT+IFnnjBZgIrWZHVi+Chtu9HWxFVqKZWb2RhLpbJR73isjU+nhyv6klkh0PJNTJcvUMHxLxjZcQ== X-Received: by 2002:a05:620a:2b97:b0:7c0:874f:c87 with SMTP id af79cd13be357-7c0cef6475dmr1731625685a.35.1740337176294; Sun, 23 Feb 2025 10:59:36 -0800 (PST) Received: from denia.c.googlers.com (15.237.245.35.bc.googleusercontent.com. [35.245.237.15]) by smtp.gmail.com with ESMTPSA id af79cd13be357-7c09bf81253sm894052885a.47.2025.02.23.10.59.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Feb 2025 10:59:34 -0800 (PST) From: Ricardo Ribalda Date: Sun, 23 Feb 2025 18:58:10 +0000 Subject: [PATCH v3 07/12] media: v4l2: Remove vidioc_queryctrl callback Precedence: bulk X-Mailing-List: linux-media@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250223-queryctrl-v3-7-4292911cab6b@chromium.org> References: <20250223-queryctrl-v3-0-4292911cab6b@chromium.org> In-Reply-To: <20250223-queryctrl-v3-0-4292911cab6b@chromium.org> To: Mauro Carvalho Chehab , Mike Isely , Laurent Pinchart , Hans de Goede , Sakari Ailus , Andy Shevchenko , Greg Kroah-Hartman , Hans Verkuil Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, linux-staging@lists.linux.dev, Ricardo Ribalda X-Mailer: b4 0.13.0 All the drivers either use the control framework or provide a vidioc_query_ext_ctrl. We can remove this callback to reduce the temptation of new drivers to implement it. Signed-off-by: Ricardo Ribalda --- drivers/media/v4l2-core/v4l2-dev.c | 3 +-- drivers/media/v4l2-core/v4l2-ioctl.c | 2 -- include/media/v4l2-ioctl.h | 4 ---- 3 files changed, 1 insertion(+), 8 deletions(-) diff --git a/drivers/media/v4l2-core/v4l2-dev.c b/drivers/media/v4l2-core/v4l2-dev.c index 252308a67fa8..5267a0686400 100644 --- a/drivers/media/v4l2-core/v4l2-dev.c +++ b/drivers/media/v4l2-core/v4l2-dev.c @@ -572,8 +572,7 @@ static void determine_valid_ioctls(struct video_device *vdev) and that can't be tested here. If the bit for these control ioctls is set, then the ioctl is valid. But if it is 0, then it can still be valid if the filehandle passed the control handler. */ - if (vdev->ctrl_handler || ops->vidioc_queryctrl || - ops->vidioc_query_ext_ctrl) + if (vdev->ctrl_handler || ops->vidioc_query_ext_ctrl) __set_bit(_IOC_NR(VIDIOC_QUERYCTRL), valid_ioctls); if (vdev->ctrl_handler || ops->vidioc_query_ext_ctrl) __set_bit(_IOC_NR(VIDIOC_QUERY_EXT_CTRL), valid_ioctls); diff --git a/drivers/media/v4l2-core/v4l2-ioctl.c b/drivers/media/v4l2-core/v4l2-ioctl.c index deed2b44ee18..48ddeb01e70a 100644 --- a/drivers/media/v4l2-core/v4l2-ioctl.c +++ b/drivers/media/v4l2-core/v4l2-ioctl.c @@ -2294,8 +2294,6 @@ static int v4l_queryctrl(const struct v4l2_ioctl_ops *ops, return v4l2_queryctrl(vfh->ctrl_handler, p); if (vfd->ctrl_handler) return v4l2_queryctrl(vfd->ctrl_handler, p); - if (ops->vidioc_queryctrl) - return ops->vidioc_queryctrl(file, fh, p); if (!ops->vidioc_query_ext_ctrl) return -ENOTTY; diff --git a/include/media/v4l2-ioctl.h b/include/media/v4l2-ioctl.h index bdbb7e542321..013996c33a9e 100644 --- a/include/media/v4l2-ioctl.h +++ b/include/media/v4l2-ioctl.h @@ -193,8 +193,6 @@ struct v4l2_fh; * :ref:`VIDIOC_G_OUTPUT ` ioctl * @vidioc_s_output: pointer to the function that implements * :ref:`VIDIOC_S_OUTPUT ` ioctl - * @vidioc_queryctrl: pointer to the function that implements - * :ref:`VIDIOC_QUERYCTRL ` ioctl * @vidioc_query_ext_ctrl: pointer to the function that implements * :ref:`VIDIOC_QUERY_EXT_CTRL ` ioctl * @vidioc_g_ctrl: pointer to the function that implements @@ -461,8 +459,6 @@ struct v4l2_ioctl_ops { int (*vidioc_s_output)(struct file *file, void *fh, unsigned int i); /* Control handling */ - int (*vidioc_queryctrl)(struct file *file, void *fh, - struct v4l2_queryctrl *a); int (*vidioc_query_ext_ctrl)(struct file *file, void *fh, struct v4l2_query_ext_ctrl *a); int (*vidioc_g_ctrl)(struct file *file, void *fh, From patchwork Sun Feb 23 18:58:11 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ricardo Ribalda X-Patchwork-Id: 13987207 Received: from mail-qv1-f47.google.com (mail-qv1-f47.google.com [209.85.219.47]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 554B120E302 for ; Sun, 23 Feb 2025 18:59:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.219.47 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740337180; cv=none; b=ebPyuBQtOaVTTe6MTRC+Ek65FjkX31ujNtI0Ubdixz8mpR0Bz7cx/EQBR601BURAjcg1LfJUx3OT6tPsM7FglKh8vBb2WC3DdyoLgxyid5JKBgBGkOqfncPpAyw6y2KH721BbBZlSMnghe9r0ICpmaowSA9YuaSZYNR6Mkiy0zs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740337180; c=relaxed/simple; bh=xXpFiA/NyUpbzOvlTbdhsbIOHNibM6ftIRafynCnP+E=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=OB1Jq2iLtRHXTskecVjFq6KLP+WKj6HP/kdpUKA+7E3aEFXq98C5xOvY+TH7XvXWO/IFdFTIyA4St/u1FrHxcyij+xBLH4np3kA/Nnu3W2rrYX064ntroTdw5fVrifYSFkqLufecxWQIht+L/YFcyN9dASUnXHErovOsw9Li0Dg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org; spf=pass smtp.mailfrom=chromium.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b=L1bQxXoL; arc=none smtp.client-ip=209.85.219.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=chromium.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b="L1bQxXoL" Received: by mail-qv1-f47.google.com with SMTP id 6a1803df08f44-6e67ce516efso30558136d6.3 for ; Sun, 23 Feb 2025 10:59:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1740337177; x=1740941977; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=/iyWdZqEotC84XlO1OAQy2WGSlw/iOHY1m4U05QqJMk=; b=L1bQxXoLt2OtRdRHXyaQPEmo2MINA6Zg9ZFb3/iKlX9xOfCpAh/23q/FU/ZTMwtylx LOQ4G1n3csGuaqvZJ+qXylJezC8oG9eZsDigh+nnhgX4tMzL8KuPuC+K9sZzb6Jx3DBB 3uZn/idSkZ/5Q7Qzq/Hkf92p8S1rudjutMxfw= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740337177; x=1740941977; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=/iyWdZqEotC84XlO1OAQy2WGSlw/iOHY1m4U05QqJMk=; b=l3zAEjblDYc3DtlGNlevoYQy4ozzG4ynExubyNtvU35X2sLCFesxhVaprX/L69hzP0 1TAdru9uPIVcIKoNsPJWNx5YGxFckr2FXCAeCj2PV0Aykyib3iGEUA/Kn0OP4ufNvUbQ Rv01fV/nK09a94U+WJ2TREgbTvgAxe2mTwlfBG+ZydNNS6HLoKnZBzqxZeZ0Pbz5IMrm H8ZEDZH+8DGLyrDvas2I7FNcWSrkUqFd3Qo0pl5R8V4dNngb8UQkZn9QTqmPmx2ONNge EGOoOcc6kvswsTGP8CinONFoAif3p9xKxpWF0qippZm42sqU2m+4yxOf2g0cPzbUcyjr xbnA== X-Gm-Message-State: AOJu0YxHemjxZb4nueNzofiwruUVsOwYZlwYKWTsKC62HQPH1dkP4nZh OW7wd09gl0sLXGiS9TTruqQ8F+GvEDfgWf0K8811ES1GzXVjcwzcVQeTahH/Aw== X-Gm-Gg: ASbGncuPJ6xvnufnWmGdKRNebIDTSaQqBXzkX1R8m/COS4jjmK3oADm/VRBmas202y5 zw+owEzAjbPZ2qt8WfXOL/ZEwoCy2qFwyHjlTD2/lIZ6lx+vSEuAtj02tYVI3i0KTFh4rJRlXPB bbYiXuHadgeuqw5FMlTlMJ9bErdIfTKGO3CNAzi8UT5SkvwCiYW50jWVqVkcdqVVHngjoJ8ncO9 PxtvKlkzMxbs5DoczA9dfDd9jF4juvJiMNaS4UymFCrd6vyxUOsTLv8Hl59zFDnOoMl3EsxuiNu RiV9IjgtiOU9iXrGw/wzxp3ACG8KVWbobextO7qAB2CI0x/wVT40WbGUONrlATf0Jl+GcNibad/ qRAQ= X-Google-Smtp-Source: AGHT+IFmA5F6ZvDlLt6gf9is1F56bMr6yT4/exI4Bz1fcJqcD+qyUMAxAufOoGLCX4weML9wR0ltAg== X-Received: by 2002:a05:6214:daf:b0:6e4:4331:aad9 with SMTP id 6a1803df08f44-6e6ae7c96e2mr137768826d6.2.1740337177325; Sun, 23 Feb 2025 10:59:37 -0800 (PST) Received: from denia.c.googlers.com (15.237.245.35.bc.googleusercontent.com. [35.245.237.15]) by smtp.gmail.com with ESMTPSA id af79cd13be357-7c09bf81253sm894052885a.47.2025.02.23.10.59.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Feb 2025 10:59:36 -0800 (PST) From: Ricardo Ribalda Date: Sun, 23 Feb 2025 18:58:11 +0000 Subject: [PATCH v3 08/12] media: v4l2: Remove vidioc_g_ctrl callback Precedence: bulk X-Mailing-List: linux-media@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250223-queryctrl-v3-8-4292911cab6b@chromium.org> References: <20250223-queryctrl-v3-0-4292911cab6b@chromium.org> In-Reply-To: <20250223-queryctrl-v3-0-4292911cab6b@chromium.org> To: Mauro Carvalho Chehab , Mike Isely , Laurent Pinchart , Hans de Goede , Sakari Ailus , Andy Shevchenko , Greg Kroah-Hartman , Hans Verkuil Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, linux-staging@lists.linux.dev, Ricardo Ribalda X-Mailer: b4 0.13.0 All the drivers either use the control framework or provide a vidioc_g_ext_ctrls callback. We can remove this callback. Thanks for your service! Signed-off-by: Ricardo Ribalda --- drivers/media/v4l2-core/v4l2-dev.c | 2 +- drivers/media/v4l2-core/v4l2-ioctl.c | 2 -- include/media/v4l2-ioctl.h | 4 ---- 3 files changed, 1 insertion(+), 7 deletions(-) diff --git a/drivers/media/v4l2-core/v4l2-dev.c b/drivers/media/v4l2-core/v4l2-dev.c index 5267a0686400..068ee67cd574 100644 --- a/drivers/media/v4l2-core/v4l2-dev.c +++ b/drivers/media/v4l2-core/v4l2-dev.c @@ -576,7 +576,7 @@ static void determine_valid_ioctls(struct video_device *vdev) __set_bit(_IOC_NR(VIDIOC_QUERYCTRL), valid_ioctls); if (vdev->ctrl_handler || ops->vidioc_query_ext_ctrl) __set_bit(_IOC_NR(VIDIOC_QUERY_EXT_CTRL), valid_ioctls); - if (vdev->ctrl_handler || ops->vidioc_g_ctrl || ops->vidioc_g_ext_ctrls) + if (vdev->ctrl_handler || ops->vidioc_g_ext_ctrls) __set_bit(_IOC_NR(VIDIOC_G_CTRL), valid_ioctls); if (vdev->ctrl_handler || ops->vidioc_s_ctrl || ops->vidioc_s_ext_ctrls) __set_bit(_IOC_NR(VIDIOC_S_CTRL), valid_ioctls); diff --git a/drivers/media/v4l2-core/v4l2-ioctl.c b/drivers/media/v4l2-core/v4l2-ioctl.c index 48ddeb01e70a..d6af0ab0d7ea 100644 --- a/drivers/media/v4l2-core/v4l2-ioctl.c +++ b/drivers/media/v4l2-core/v4l2-ioctl.c @@ -2378,8 +2378,6 @@ static int v4l_g_ctrl(const struct v4l2_ioctl_ops *ops, return v4l2_g_ctrl(vfh->ctrl_handler, p); if (vfd->ctrl_handler) return v4l2_g_ctrl(vfd->ctrl_handler, p); - if (ops->vidioc_g_ctrl) - return ops->vidioc_g_ctrl(file, fh, p); if (ops->vidioc_g_ext_ctrls == NULL) return -ENOTTY; diff --git a/include/media/v4l2-ioctl.h b/include/media/v4l2-ioctl.h index 013996c33a9e..4d69128023f8 100644 --- a/include/media/v4l2-ioctl.h +++ b/include/media/v4l2-ioctl.h @@ -195,8 +195,6 @@ struct v4l2_fh; * :ref:`VIDIOC_S_OUTPUT ` ioctl * @vidioc_query_ext_ctrl: pointer to the function that implements * :ref:`VIDIOC_QUERY_EXT_CTRL ` ioctl - * @vidioc_g_ctrl: pointer to the function that implements - * :ref:`VIDIOC_G_CTRL ` ioctl * @vidioc_s_ctrl: pointer to the function that implements * :ref:`VIDIOC_S_CTRL ` ioctl * @vidioc_g_ext_ctrls: pointer to the function that implements @@ -461,8 +459,6 @@ struct v4l2_ioctl_ops { /* Control handling */ int (*vidioc_query_ext_ctrl)(struct file *file, void *fh, struct v4l2_query_ext_ctrl *a); - int (*vidioc_g_ctrl)(struct file *file, void *fh, - struct v4l2_control *a); int (*vidioc_s_ctrl)(struct file *file, void *fh, struct v4l2_control *a); int (*vidioc_g_ext_ctrls)(struct file *file, void *fh, From patchwork Sun Feb 23 18:58:12 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ricardo Ribalda X-Patchwork-Id: 13987208 Received: from mail-qv1-f46.google.com (mail-qv1-f46.google.com [209.85.219.46]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id AB4EA20E310 for ; Sun, 23 Feb 2025 18:59:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.219.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740337182; cv=none; b=phERSzAn2LP4zMJ/Dtk62yALd+VMVdRYU5ujJ3OsnMmqYDPEbg22NBPZ5a3xzPk6ROW3P8D6EG04PPHkQ4O/bBbnI4IYWqINSfUtagHPeMiFlhIooptzZ3IUdXpX1dirGUcV9f0OX1PVKTXNobrS5YDyNgfVem8bDPkrgE86ou8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740337182; c=relaxed/simple; bh=WmADWSvj6uAUkvJFbyL8wOMewg1Hx0JsVjiP96waOB8=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=T5AUmYqapv61y4CPBhBXTrs75ZSZCr+hyWBgk63sF5mNiqo8M3sPLrwddyDGGuvF2Xd6IjLxLn0iIC7cpBEYHeXIURaRM7jK2o4edozyDKUZQD5qHnz1l9ieHKuqpJfBYdiEjt+MyztlRlr7pUxqZN0Np45r2A59qcEUi5IMViU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org; spf=pass smtp.mailfrom=chromium.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b=dgLzfCTp; arc=none smtp.client-ip=209.85.219.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=chromium.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b="dgLzfCTp" Received: by mail-qv1-f46.google.com with SMTP id 6a1803df08f44-6e86b92d3b0so2678726d6.2 for ; Sun, 23 Feb 2025 10:59:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1740337179; x=1740941979; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=LmMOjl+qwMNw0jD9DMRg4cojYEKleYPWUi1Y0A1e5HY=; b=dgLzfCTp/tGPFgPBuj1CO3pFLDfvWufi/QuUvGB6WXD2w+85I3hrs7zpVnmec87Fys TChxW1X1zO6qF0494NhlKMRG1DxsyHEKfeZAcahIr81p41i9BR+jbwh2kzEUD3A5a97j iGySdlCCdgpjTWTmSWSCiH6XVvz5i4f+5QMr0= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740337179; x=1740941979; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=LmMOjl+qwMNw0jD9DMRg4cojYEKleYPWUi1Y0A1e5HY=; b=kUMZ9zZr87+ETet7nZxINaRv6J5x+Req0X7eya9GYNOhdFmU8dFhDhTV8F8kWiCE7E C5S5+z6vLGoMvHynNkElrie4oFHxvNNYsy/EdcYc8+Htw9JAdQV02GMjxOhGZQ9YgO1k xs6gxNOasefcz7LAJfHUye7mOwMzFh1gYN3JZr51cA2BHsj98CFJ/sVkDuqvgzt2FU9d vULdUMWM2n+IVRKinFIr0jJ620Qxw29JCZIWWRY7OYv2DAm1YUSy8ZY9W5KMVVABhLME 5KaETqsxzX7Ownxj1/xz2f3o1ScvP4Yb9ftp3TAbvzdIlmwU0pqYf0t38ZsZwNT8hyQR HV1g== X-Gm-Message-State: AOJu0YxBD6Mhy5bLKduNmwZFBzv7raVMGBuczZ7kuqNbgkgUW+PNajVi CpPuqo0Sj8Iqs9DYnl4TfI513dZ6uO23Vn751CJqMu3a2nQuvfon0kYumk6FGA== X-Gm-Gg: ASbGnctCVjp8WI1lgXbwJlS3YrNVo6HkCkoCR5WmAi9bQP7QgzJdKXiW49sRIQOv0qF ekV6m+c6tmNSohnZMfie8YmpcfTCws2PB+6GDX5SP2RN9w/suj04XSSSizTMEj7ONgx+Kjeygl1 k5XqbWFxHwtAlS6v8coMWk9Y8C1dVQFg6Q0cbP0NX7kUSpefLV0tx5iGgldPwzC1plltWImIqID hIQenkPg77RTkqQBZBF+xJZW6uroxlFDXl/G+yyqhxREWvitFBfUqN+N9z+Mp9CoFw4VHDQrpRL 1oOzc2lRftr6r7/hM0kSEIzYuNA81mQrz8d9/7ZDx9NrZ2Wfn2XjJcZebjOzfFShCtBG08qCL3x +AqE= X-Google-Smtp-Source: AGHT+IG0N8p+jyjmOv+jFoMONGfZHngVMJ2/L46r6qBftBaVoQxFvMRvuW+hkaPMPsXXZun2oIuYDA== X-Received: by 2002:a05:6214:d4e:b0:6e4:2e00:ddc1 with SMTP id 6a1803df08f44-6e6ae9ffd75mr145374826d6.40.1740337179698; Sun, 23 Feb 2025 10:59:39 -0800 (PST) Received: from denia.c.googlers.com (15.237.245.35.bc.googleusercontent.com. [35.245.237.15]) by smtp.gmail.com with ESMTPSA id af79cd13be357-7c09bf81253sm894052885a.47.2025.02.23.10.59.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Feb 2025 10:59:38 -0800 (PST) From: Ricardo Ribalda Date: Sun, 23 Feb 2025 18:58:12 +0000 Subject: [PATCH v3 09/12] media: cx231xx: Remove vidioc_s_ctrl callback Precedence: bulk X-Mailing-List: linux-media@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250223-queryctrl-v3-9-4292911cab6b@chromium.org> References: <20250223-queryctrl-v3-0-4292911cab6b@chromium.org> In-Reply-To: <20250223-queryctrl-v3-0-4292911cab6b@chromium.org> To: Mauro Carvalho Chehab , Mike Isely , Laurent Pinchart , Hans de Goede , Sakari Ailus , Andy Shevchenko , Greg Kroah-Hartman , Hans Verkuil Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, linux-staging@lists.linux.dev, Ricardo Ribalda X-Mailer: b4 0.13.0 The driver has been converted to the control framework in the past: commit 88b6ffedd901 ("[media] cx231xx-417: convert to the control framework"). This function is never called, the core will only use the control framework instead. Signed-off-by: Ricardo Ribalda --- drivers/media/usb/cx231xx/cx231xx-417.c | 15 --------------- 1 file changed, 15 deletions(-) diff --git a/drivers/media/usb/cx231xx/cx231xx-417.c b/drivers/media/usb/cx231xx/cx231xx-417.c index a4a9781328c5..5a4b0f96cca2 100644 --- a/drivers/media/usb/cx231xx/cx231xx-417.c +++ b/drivers/media/usb/cx231xx/cx231xx-417.c @@ -1538,20 +1538,6 @@ static int vidioc_s_std(struct file *file, void *priv, v4l2_std_id id) return 0; } -static int vidioc_s_ctrl(struct file *file, void *priv, - struct v4l2_control *ctl) -{ - struct cx231xx *dev = video_drvdata(file); - struct v4l2_subdev *sd; - - dprintk(3, "enter vidioc_s_ctrl()\n"); - /* Update the A/V core */ - v4l2_device_for_each_subdev(sd, &dev->v4l2_dev) - v4l2_s_ctrl(NULL, sd->ctrl_handler, ctl); - dprintk(3, "exit vidioc_s_ctrl()\n"); - return 0; -} - static int vidioc_enum_fmt_vid_cap(struct file *file, void *priv, struct v4l2_fmtdesc *f) { @@ -1627,7 +1613,6 @@ static const struct v4l2_ioctl_ops mpeg_ioctl_ops = { .vidioc_enum_input = cx231xx_enum_input, .vidioc_g_input = cx231xx_g_input, .vidioc_s_input = cx231xx_s_input, - .vidioc_s_ctrl = vidioc_s_ctrl, .vidioc_g_pixelaspect = vidioc_g_pixelaspect, .vidioc_g_selection = vidioc_g_selection, .vidioc_querycap = cx231xx_querycap, From patchwork Sun Feb 23 18:58:13 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ricardo Ribalda X-Patchwork-Id: 13987209 Received: from mail-qk1-f179.google.com (mail-qk1-f179.google.com [209.85.222.179]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0379020F08E for ; Sun, 23 Feb 2025 18:59:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.222.179 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740337185; cv=none; b=MzZbN121L4uyWHagtMhwf7phXbdjvbv700fo5m+9ABO/flwMjsn34p/hxhEj7mIUkTG3Ck6ocVBGhZG13wwZq8FkWU2uikm643s7pDG2/QQ9/cPh9O2Q8Mb197J34lyRcaIaNUxWr9XQ/yE9WWFutm0pOXi/PJaeUVZ2SXnEbl4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740337185; c=relaxed/simple; bh=R+jYJua/JoNmJtSkvaDUD0DjudTsHKGGp3KP+h8MO+8=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Uug5JOp42IS1PMLo7OBU0fbDp8Acm3tU+kL4DYjV8qd/75duE0/ayVkKJzS9KJP8T8AjFMyutOQ2ig8DwbZ0CWE/Uf+3RqOi/gkDi1isRhwIRP6S0tknjojFgwS1aXB2AHrNDjqQ9fdTGLXQGN/xhduV+V5pVyx8pN3g0aHChsQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org; spf=pass smtp.mailfrom=chromium.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b=oVcWpjyj; arc=none smtp.client-ip=209.85.222.179 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=chromium.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b="oVcWpjyj" Received: by mail-qk1-f179.google.com with SMTP id af79cd13be357-7c089b2e239so406879885a.0 for ; Sun, 23 Feb 2025 10:59:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1740337182; x=1740941982; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=FTHD0WBrVxKMoHAJFWLjBpuZYRSXtcELoY8iTxveD40=; b=oVcWpjyjRoujNzYd/fWacYd9WSR4WUuEELJXzBAkBGTi6lx/H2Nhd9H4lbYV/KPTBp bnEDUt5tmpD/x42YXopOIIRULNqYyR2pe7oPtGdMpzZrNn7FvRwQnPkvb6VTc/BWkeRz nbjmTD4Ge29zWLroV35B7CPSA62jOlvjuW6ok= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740337182; x=1740941982; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=FTHD0WBrVxKMoHAJFWLjBpuZYRSXtcELoY8iTxveD40=; b=YAyqFaOXxNavs/hw3Hpq4pl9tlUMOrFojoNcMzI1T134uTzNgaHpOCYpDiPXxsB3h1 JfbS/dg2RYEvVyVUePdgneBBBdx4Dv9y7YIgMuYGXA/Re1vbBjBULDLVvCGBUfZoi6Vl CvlG8KrkM3m5dbdh6x46GL3hfC3YO9AD8q2siVPKWK3mpnSg9zTHff7Hwgr9V2W5MdB1 h0cNVeZSmoBchAOKr11F2Dh/7Nl2Ehy9I+I4Ssxyajbxgiodm3mvNGwTnXFoe2tRygt+ IKMvfV5zn87d1XI3gGwdADMFSudfXYxeuLK8suvd54s/F22872uUBbhV5hh0nEkQguGB wEdA== X-Gm-Message-State: AOJu0YwVrk6WF7bjZofEgoMixd/0/3vIOddotcttRPuxZfgLaaOTJMCw An5WQy17/uvkGBYc2ZC1PTBjDyX3EswkwoZTHPzfif5LXnprmHGww63OerBuxg== X-Gm-Gg: ASbGncuifW7ehp68KZE7b43KYFpV5ULEMoI5nbErxYyD5sR9mVnFxx3mGJo3eb+aY6c UPjAby3YbjZr8i7XrAgzrtklxjvM2HEwnKYNTGyl8oiEbmHTH/R2db/NGFROmu9TNqD7InDD51p Ey8I6bPgOvIB5aNoKVMJgFNyw7OZwkme7W6R4N3jNW8kd0l9vCsTNg4Sh/o8Ogl7c/tJSGc7UwP GACxc3DcMC4ZU1+7nKu77o+m+5HQOpmVoJi3cbxQUBxJTRis8h7w6HsQDDxGqpP2XPIYghDStc8 OR9U8APNBzc3Z4t+ICYPCTzM+vAwhzgZaS/lDPz0MZZchQOZncGn0U/B8t43MIs5YTl5BlXYE18 R71g= X-Google-Smtp-Source: AGHT+IHMMtAKUl1nnqWjm92ELMXJMqaYYhbAnpTq7xf63u5qZkQjjXTU4L/aQ34kAl2TkpYkioCZdA== X-Received: by 2002:a05:620a:468b:b0:7b6:c324:d3a5 with SMTP id af79cd13be357-7c0c227c7demr1840363085a.19.1740337182001; Sun, 23 Feb 2025 10:59:42 -0800 (PST) Received: from denia.c.googlers.com (15.237.245.35.bc.googleusercontent.com. [35.245.237.15]) by smtp.gmail.com with ESMTPSA id af79cd13be357-7c09bf81253sm894052885a.47.2025.02.23.10.59.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Feb 2025 10:59:40 -0800 (PST) From: Ricardo Ribalda Date: Sun, 23 Feb 2025 18:58:13 +0000 Subject: [PATCH v3 10/12] media: v4l2: Remove vidioc_s_ctrl callback Precedence: bulk X-Mailing-List: linux-media@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250223-queryctrl-v3-10-4292911cab6b@chromium.org> References: <20250223-queryctrl-v3-0-4292911cab6b@chromium.org> In-Reply-To: <20250223-queryctrl-v3-0-4292911cab6b@chromium.org> To: Mauro Carvalho Chehab , Mike Isely , Laurent Pinchart , Hans de Goede , Sakari Ailus , Andy Shevchenko , Greg Kroah-Hartman , Hans Verkuil Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, linux-staging@lists.linux.dev, Ricardo Ribalda X-Mailer: b4 0.13.0 All the drivers either use the control framework or provide a vidiod_ext_ctrl. We can remove this callback. Signed-off-by: Ricardo Ribalda --- drivers/media/v4l2-core/v4l2-dev.c | 2 +- drivers/media/v4l2-core/v4l2-ioctl.c | 2 -- include/media/v4l2-ioctl.h | 4 ---- 3 files changed, 1 insertion(+), 7 deletions(-) diff --git a/drivers/media/v4l2-core/v4l2-dev.c b/drivers/media/v4l2-core/v4l2-dev.c index 068ee67cd574..b40c08ce909d 100644 --- a/drivers/media/v4l2-core/v4l2-dev.c +++ b/drivers/media/v4l2-core/v4l2-dev.c @@ -578,7 +578,7 @@ static void determine_valid_ioctls(struct video_device *vdev) __set_bit(_IOC_NR(VIDIOC_QUERY_EXT_CTRL), valid_ioctls); if (vdev->ctrl_handler || ops->vidioc_g_ext_ctrls) __set_bit(_IOC_NR(VIDIOC_G_CTRL), valid_ioctls); - if (vdev->ctrl_handler || ops->vidioc_s_ctrl || ops->vidioc_s_ext_ctrls) + if (vdev->ctrl_handler || ops->vidioc_s_ext_ctrls) __set_bit(_IOC_NR(VIDIOC_S_CTRL), valid_ioctls); if (vdev->ctrl_handler || ops->vidioc_g_ext_ctrls) __set_bit(_IOC_NR(VIDIOC_G_EXT_CTRLS), valid_ioctls); diff --git a/drivers/media/v4l2-core/v4l2-ioctl.c b/drivers/media/v4l2-core/v4l2-ioctl.c index d6af0ab0d7ea..fea53b419351 100644 --- a/drivers/media/v4l2-core/v4l2-ioctl.c +++ b/drivers/media/v4l2-core/v4l2-ioctl.c @@ -2411,8 +2411,6 @@ static int v4l_s_ctrl(const struct v4l2_ioctl_ops *ops, return v4l2_s_ctrl(vfh, vfh->ctrl_handler, p); if (vfd->ctrl_handler) return v4l2_s_ctrl(NULL, vfd->ctrl_handler, p); - if (ops->vidioc_s_ctrl) - return ops->vidioc_s_ctrl(file, fh, p); if (ops->vidioc_s_ext_ctrls == NULL) return -ENOTTY; diff --git a/include/media/v4l2-ioctl.h b/include/media/v4l2-ioctl.h index 4d69128023f8..c6ec87e88dfe 100644 --- a/include/media/v4l2-ioctl.h +++ b/include/media/v4l2-ioctl.h @@ -195,8 +195,6 @@ struct v4l2_fh; * :ref:`VIDIOC_S_OUTPUT ` ioctl * @vidioc_query_ext_ctrl: pointer to the function that implements * :ref:`VIDIOC_QUERY_EXT_CTRL ` ioctl - * @vidioc_s_ctrl: pointer to the function that implements - * :ref:`VIDIOC_S_CTRL ` ioctl * @vidioc_g_ext_ctrls: pointer to the function that implements * :ref:`VIDIOC_G_EXT_CTRLS ` ioctl * @vidioc_s_ext_ctrls: pointer to the function that implements @@ -459,8 +457,6 @@ struct v4l2_ioctl_ops { /* Control handling */ int (*vidioc_query_ext_ctrl)(struct file *file, void *fh, struct v4l2_query_ext_ctrl *a); - int (*vidioc_s_ctrl)(struct file *file, void *fh, - struct v4l2_control *a); int (*vidioc_g_ext_ctrls)(struct file *file, void *fh, struct v4l2_ext_controls *a); int (*vidioc_s_ext_ctrls)(struct file *file, void *fh, From patchwork Sun Feb 23 18:58:14 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ricardo Ribalda X-Patchwork-Id: 13987210 Received: from mail-qk1-f178.google.com (mail-qk1-f178.google.com [209.85.222.178]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 377C120F094 for ; Sun, 23 Feb 2025 18:59:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.222.178 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740337186; cv=none; b=aw3/WxCmj/2TIXoekgRfs+rWlBKfos36oduj63ebc/za10TncIk9U6Q3ELc2AMB/QPSadM0j7m6816LuLxnMh6ORvVjDYk3g8qTjIAdVDh8MJNk6JVki573+8KJnZidZX2YedNPql66JMrBM86rbS8HOgpvn586yHQc6tHGJoUs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740337186; c=relaxed/simple; bh=bGURjosegTH+P+Gw5HjXH9uRa5Uc4pPh6VYCjWY0HAo=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=KuAxo/fThJ8jJ0O7tCMoS0UGPbGLL4xq2VyopxdJZSjyGF8hm0GFEbL+9kBudNTgGNvrmEvyI12DvmG0vccbqC9pVXpVZpVFlybXO/AIrcIo9fH51Hh5bT9rVNpZN4NPR5/5TcQo3/7r6PCHjnJUmBbiLGuuTUp49//aAeL8HWk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org; spf=pass smtp.mailfrom=chromium.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b=AoF3Ah7B; arc=none smtp.client-ip=209.85.222.178 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=chromium.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b="AoF3Ah7B" Received: by mail-qk1-f178.google.com with SMTP id af79cd13be357-7c09a30e14dso656314585a.0 for ; Sun, 23 Feb 2025 10:59:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1740337183; x=1740941983; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=KXG9+uuGWmSBcxIUkNXdZws6nfJZHCT+9+MDo1/1sYc=; b=AoF3Ah7Bd0avw5HDqt/QWWl5DVcCbjnrANUvtWsmleOc11P2RE2/hmqujGDL97LzeA WOJoZpIZeX04ArP9AiSPt+PzImZdJfl7fhX5Ubn+AylnmaiofnUvPsybXl1JYr6lX86H 4nM5t9ox2Zvp7eZCNTqZtnPooYrqdVV7Qg8+Y= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740337183; x=1740941983; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=KXG9+uuGWmSBcxIUkNXdZws6nfJZHCT+9+MDo1/1sYc=; b=rY0u8Kx88vfde0oDcvRMSioCCYgerIY3CELxHLCT8H1cZBSB8qjhQCu4j1LtmgOYwt UCwqgWnc5kK/8qHqRCyxvnYTk61oyvMn6Xya9SQunGBVgDvWWkojbi5bvkV6UwfZ1fSF 6LutZWQObqdaTg4jNFWrvhOdHoPz5jiKPISMSM9KZy3fO8avp2HDYBpyKHwxxk4slYWu kempPwX5IgfdGhmQUvkecmsEUksZiLJymvy1fRh583BSkwuqZsrEwLjs8ELaY60phJQR 4OGEbY0LFTcI9fiiQKyoGTRBTVORjdmUBlBXet5aMOqLLicQvKmr/O+2ORYbfSe3dd+z 4fzQ== X-Gm-Message-State: AOJu0YycVVXiQlCxicBF7KgKVtO1ZPxfIwMllxftHwJGsTfsV4hEwhU5 BHVhdDdrDTJt0Cfhk0KSxlzVweYUDmqyT2xNC1K4kVfwWdRG1rsVe4/lGeHacQ== X-Gm-Gg: ASbGncv569hqqQB61O0z8Ro4UMc1jOkzndgXCwr1Ya9psSC01u9jLJ2nBfjBTKdItuO v8C8YU4QD+eDxhqioTdt1tQuoTfOo2hOr+zqCFOkBjZLajMwANgkv/d2WkUnqDhG2+Tp5us19ci d3wZitpqLZHcLAyaLpvVS+LrFYlnt8/M1e7bK2I3GRXTW8lCpK6pGn8zPje0QmtBuh0zWknr/bx tJiu8trLgzQNACjk5bPEvx1fwn7FwAPhaIIl3tXW6KZSB1PAo9Q80YtbORp41HHj2d/ww12yqBV 1lOmrNhazEQBmbfFVMN7soCoe0bQpjYRE2ds/qm3xo4H7KDgOoF26SZQ4Dof0G4IhG7+qp/XmrL g01g= X-Google-Smtp-Source: AGHT+IGjHh9bP3Z1R0+XLoulszUD7WhUuuTZdPXT1kOhHNmPI8BbzEJMwqu44jAaJET9UyJKRwaG6w== X-Received: by 2002:a05:620a:450c:b0:7c0:b5bc:a122 with SMTP id af79cd13be357-7c0cef55f43mr1666469185a.35.1740337183095; Sun, 23 Feb 2025 10:59:43 -0800 (PST) Received: from denia.c.googlers.com (15.237.245.35.bc.googleusercontent.com. [35.245.237.15]) by smtp.gmail.com with ESMTPSA id af79cd13be357-7c09bf81253sm894052885a.47.2025.02.23.10.59.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Feb 2025 10:59:42 -0800 (PST) From: Ricardo Ribalda Date: Sun, 23 Feb 2025 18:58:14 +0000 Subject: [PATCH v3 11/12] media: v4l2-core: Introduce v4l2_query_ext_ctrl_to_v4l2_queryctrl Precedence: bulk X-Mailing-List: linux-media@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250223-queryctrl-v3-11-4292911cab6b@chromium.org> References: <20250223-queryctrl-v3-0-4292911cab6b@chromium.org> In-Reply-To: <20250223-queryctrl-v3-0-4292911cab6b@chromium.org> To: Mauro Carvalho Chehab , Mike Isely , Laurent Pinchart , Hans de Goede , Sakari Ailus , Andy Shevchenko , Greg Kroah-Hartman , Hans Verkuil Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, linux-staging@lists.linux.dev, Ricardo Ribalda X-Mailer: b4 0.13.0 We use this logic in a couple of places. Refactor into a function. No functional change expected from this patch. Signed-off-by: Ricardo Ribalda --- drivers/media/v4l2-core/v4l2-ctrls-api.c | 51 +++++++++++++++++++------------- drivers/media/v4l2-core/v4l2-ioctl.c | 28 ++---------------- include/media/v4l2-ctrls.h | 12 ++++++++ 3 files changed, 44 insertions(+), 47 deletions(-) diff --git a/drivers/media/v4l2-core/v4l2-ctrls-api.c b/drivers/media/v4l2-core/v4l2-ctrls-api.c index 95a2202879d8..9dd2bc5893dd 100644 --- a/drivers/media/v4l2-core/v4l2-ctrls-api.c +++ b/drivers/media/v4l2-core/v4l2-ctrls-api.c @@ -1123,39 +1123,48 @@ int v4l2_query_ext_ctrl(struct v4l2_ctrl_handler *hdl, struct v4l2_query_ext_ctr } EXPORT_SYMBOL(v4l2_query_ext_ctrl); -/* Implement VIDIOC_QUERYCTRL */ -int v4l2_queryctrl(struct v4l2_ctrl_handler *hdl, struct v4l2_queryctrl *qc) +void v4l2_query_ext_ctrl_to_v4l2_queryctrl(struct v4l2_queryctrl *to, + const struct v4l2_query_ext_ctrl *from) { - struct v4l2_query_ext_ctrl qec = { qc->id }; - int rc; + to->id = from->id; + to->type = from->type; + to->flags = from->flags; + strscpy(to->name, from->name, sizeof(to->name)); - rc = v4l2_query_ext_ctrl(hdl, &qec); - if (rc) - return rc; - - qc->id = qec.id; - qc->type = qec.type; - qc->flags = qec.flags; - strscpy(qc->name, qec.name, sizeof(qc->name)); - switch (qc->type) { + switch (from->type) { case V4L2_CTRL_TYPE_INTEGER: case V4L2_CTRL_TYPE_BOOLEAN: case V4L2_CTRL_TYPE_MENU: case V4L2_CTRL_TYPE_INTEGER_MENU: case V4L2_CTRL_TYPE_STRING: case V4L2_CTRL_TYPE_BITMASK: - qc->minimum = qec.minimum; - qc->maximum = qec.maximum; - qc->step = qec.step; - qc->default_value = qec.default_value; + to->minimum = from->minimum; + to->maximum = from->maximum; + to->step = from->step; + to->default_value = from->default_value; break; default: - qc->minimum = 0; - qc->maximum = 0; - qc->step = 0; - qc->default_value = 0; + to->minimum = 0; + to->maximum = 0; + to->step = 0; + to->default_value = 0; break; } +} +EXPORT_SYMBOL(v4l2_query_ext_ctrl_to_v4l2_queryctrl); + +/* Implement VIDIOC_QUERYCTRL */ +int v4l2_queryctrl(struct v4l2_ctrl_handler *hdl, struct v4l2_queryctrl *qc) +{ + struct v4l2_query_ext_ctrl qec = { qc->id }; + int rc; + + rc = v4l2_query_ext_ctrl(hdl, &qec); + if (rc) + return rc; + + v4l2_query_ext_ctrl_to_v4l2_queryctrl(qc, &qec); + return 0; } EXPORT_SYMBOL(v4l2_queryctrl); diff --git a/drivers/media/v4l2-core/v4l2-ioctl.c b/drivers/media/v4l2-core/v4l2-ioctl.c index fea53b419351..4e15ef4840b0 100644 --- a/drivers/media/v4l2-core/v4l2-ioctl.c +++ b/drivers/media/v4l2-core/v4l2-ioctl.c @@ -2302,32 +2302,8 @@ static int v4l_queryctrl(const struct v4l2_ioctl_ops *ops, ret = ops->vidioc_query_ext_ctrl(file, fh, &qec); if (ret) return ret; - - p->id = qec.id; - p->type = qec.type; - p->flags = qec.flags; - strscpy(p->name, qec.name, sizeof(p->name)); - switch (p->type) { - case V4L2_CTRL_TYPE_INTEGER: - case V4L2_CTRL_TYPE_BOOLEAN: - case V4L2_CTRL_TYPE_MENU: - case V4L2_CTRL_TYPE_INTEGER_MENU: - case V4L2_CTRL_TYPE_STRING: - case V4L2_CTRL_TYPE_BITMASK: - p->minimum = qec.minimum; - p->maximum = qec.maximum; - p->step = qec.step; - p->default_value = qec.default_value; - break; - default: - p->minimum = 0; - p->maximum = 0; - p->step = 0; - p->default_value = 0; - break; - } - - return 0; + v4l2_query_ext_ctrl_to_v4l2_queryctrl(p, &qec); + return ret; } static int v4l_query_ext_ctrl(const struct v4l2_ioctl_ops *ops, diff --git a/include/media/v4l2-ctrls.h b/include/media/v4l2-ctrls.h index 59679a42b3e7..83b84cb5cf06 100644 --- a/include/media/v4l2-ctrls.h +++ b/include/media/v4l2-ctrls.h @@ -1404,6 +1404,18 @@ v4l2_ctrl_request_hdl_ctrl_find(struct v4l2_ctrl_handler *hdl, u32 id); */ int v4l2_queryctrl(struct v4l2_ctrl_handler *hdl, struct v4l2_queryctrl *qc); +/** + * v4l2_query_ext_ctrl_to_v4l2_queryctrl - Convert a qec to qe. + * + * @to: The v4l2_queryctrl to write to. + * @from: The v4l2_query_ext_ctrl to read from. + * + * This function is a helper to convert a v4l2_query_ext_ctrl into a + * v4l2_queryctrl. + */ +void v4l2_query_ext_ctrl_to_v4l2_queryctrl(struct v4l2_queryctrl *to, + const struct v4l2_query_ext_ctrl *from); + /** * v4l2_query_ext_ctrl - Helper function to implement * :ref:`VIDIOC_QUERY_EXT_CTRL ` ioctl From patchwork Sun Feb 23 18:58:15 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ricardo Ribalda X-Patchwork-Id: 13987211 Received: from mail-qk1-f169.google.com (mail-qk1-f169.google.com [209.85.222.169]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id DEFBB20FAB6 for ; Sun, 23 Feb 2025 18:59:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.222.169 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740337187; cv=none; b=YTlBjy/GANKsCcrBfIcXKvZnTJUDiYHOjU1DqmXQjXfYCrteWm51lPKJov1N431YWn97Ha0pFFl5edshXRq7uv3+yRrtriYciBfd9XJomOY8maZSuatpTIvxitlHFwLNXk3aPJmPcsg6K5pX6tThWcGyfsa0p/RAz9rna434uNQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740337187; c=relaxed/simple; bh=dnwNReE1hPulb+Tc8iZo/fcErBj/zFU9VbifxtAwbsg=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=PIkCI3O8/d52iJQAPgQjvpCLyvI9GbjIrtiie4ZAiVcNbtBRMfq/S9RsyntKSoSxCdwHYZdU7W2o57mWUfoEjpSSGl4ItM4FzVXdqz4mVMbNsPqPbrjB+g4itoTziVyoXNslN0hd5tB8hBE3AJeX7vGacta62IPaQkSEPNLeSxQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org; spf=pass smtp.mailfrom=chromium.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b=ZvtngmJB; arc=none smtp.client-ip=209.85.222.169 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=chromium.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b="ZvtngmJB" Received: by mail-qk1-f169.google.com with SMTP id af79cd13be357-7c0a3d6a6e4so357980985a.1 for ; Sun, 23 Feb 2025 10:59:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1740337185; x=1740941985; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=P1ZNr+zAsbdRe6SnCCPjc7UJkoW/yg5cRHdJ7D9R9Hg=; b=ZvtngmJBQl9C27rYRt+X+FHVcXHm8b8taPsOH+hMlheQD3nFZ9LlBFPHq4HB5HmXBn WbV2LzrkvRZjsSyZ9vmugp8hchSiTko3xNu033TdYjkySkoKZh1KHVRFh+aoe+36kDRU AKS6ez8J+fL5jHzNts8/KNMyWzGgKl7zPvBos= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740337185; x=1740941985; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=P1ZNr+zAsbdRe6SnCCPjc7UJkoW/yg5cRHdJ7D9R9Hg=; b=VBdzP0nT5+20z0g+1kZpHVT2O9ej4p6gj2AOQeT9zjTvDH6MW7oqyIJtC7q8coBdfF 59B2a7JvtNNL5lj7nHScTpt4/gRt8yYnQdrktTpaN4+Zb/f78fsAfkyLpqE2ouYk12Lm mEn5I2FUewBp+ezIwRJywDoPzfH5NA40ccph9vxg6oXkTT57uumQx2GRh2zs6+Kr8H4k XkI004yIumF5R1sjEtwx9CA9ys8/UIuc8NvvqCRIC0EKvsxQiOgpH7kxDYyTIh4N3GMM 2lfNTy3CYIAaMaWnbw87SXLHXnr/micn3SBEbwtvyFCwexf+hvPX3dTC2moif5J7fz/h DElg== X-Gm-Message-State: AOJu0YxOTwmFjxP3Xw4dULM0x48PU8HjZ3WqyoLHmbEYgCl+r7Wj7C5r ORvG4mM2DwnehUaqyTf6Nr9s6I0dyFRUShHEQLL+h8aMPjMDQ4NkTu8WLufIIA== X-Gm-Gg: ASbGncu9mokCd+LJHh9BXPGCkD9dcNqLpm6sJsG5cgwhRnwiBWXzI/G1r+lwfAdl4rf UBdLNdnN4O0g3FAgAZ4yebAsANt6QR67yaE9iXSoM2h4GDiMDotkXKn8LHEZPGwY63wCvHaF6PN NRAnIA1InYlGA1sJt+Dh8CPuQ6A7cBnYecqTtJbVhOUnOvbVY2Cu9rt46zSvvxyuyZbSFh67eRQ 4pgwbzbPvW7Gy2/GTYnNuOTU59Dc05qMSc/1fgM9lMq3kwxBFhlmNdEI4Xpj4yXZxwzSYrieReZ 3hTRfAbJ4hJlg1EMFie1ZuhliuGSGsxYFnd5OUYXUDFJKGvJ612yVOc9HhL1M1Ud22WAGUrPBAl PGK4= X-Google-Smtp-Source: AGHT+IERdPcmnp8DFkM7FzQDBmkbwLEcVj462XFjOmf0I55eocLBJbotx9VABzofXN7Sh0Nf0lYF2A== X-Received: by 2002:a05:620a:470d:b0:7c0:be0f:2dad with SMTP id af79cd13be357-7c0ceef9875mr1290641485a.21.1740337184802; Sun, 23 Feb 2025 10:59:44 -0800 (PST) Received: from denia.c.googlers.com (15.237.245.35.bc.googleusercontent.com. [35.245.237.15]) by smtp.gmail.com with ESMTPSA id af79cd13be357-7c09bf81253sm894052885a.47.2025.02.23.10.59.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Feb 2025 10:59:44 -0800 (PST) From: Ricardo Ribalda Date: Sun, 23 Feb 2025 18:58:15 +0000 Subject: [PATCH v3 12/12] media: radio-wl1273: Rename wl1273_fm_vidioc_s_ctrl Precedence: bulk X-Mailing-List: linux-media@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250223-queryctrl-v3-12-4292911cab6b@chromium.org> References: <20250223-queryctrl-v3-0-4292911cab6b@chromium.org> In-Reply-To: <20250223-queryctrl-v3-0-4292911cab6b@chromium.org> To: Mauro Carvalho Chehab , Mike Isely , Laurent Pinchart , Hans de Goede , Sakari Ailus , Andy Shevchenko , Greg Kroah-Hartman , Hans Verkuil Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, linux-staging@lists.linux.dev, Ricardo Ribalda X-Mailer: b4 0.13.0 Now that vidioc_s_ctrl is gone we want to remove that string from all the codebase. Besides, it isn't the correct name of this function anyway. It's clearly a left-over from the past. Suggested-by: Hans Verkuil Signed-off-by: Ricardo Ribalda --- drivers/media/radio/radio-wl1273.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/media/radio/radio-wl1273.c b/drivers/media/radio/radio-wl1273.c index 511a8ede05ec..f55217ccf2b8 100644 --- a/drivers/media/radio/radio-wl1273.c +++ b/drivers/media/radio/radio-wl1273.c @@ -1407,7 +1407,7 @@ static inline struct wl1273_device *to_radio(struct v4l2_ctrl *ctrl) return container_of(ctrl->handler, struct wl1273_device, ctrl_handler); } -static int wl1273_fm_vidioc_s_ctrl(struct v4l2_ctrl *ctrl) +static int wl1273_fm_s_ctrl(struct v4l2_ctrl *ctrl) { struct wl1273_device *radio = to_radio(ctrl); struct wl1273_core *core = radio->core; @@ -1945,7 +1945,7 @@ static void wl1273_vdev_release(struct video_device *dev) } static const struct v4l2_ctrl_ops wl1273_ctrl_ops = { - .s_ctrl = wl1273_fm_vidioc_s_ctrl, + .s_ctrl = wl1273_fm_s_ctrl, .g_volatile_ctrl = wl1273_fm_g_volatile_ctrl, };