From nobody Tue Jun 30 12:08:06 2026 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 9A121C43217 for ; Mon, 17 Jan 2022 18:27:10 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S242586AbiAQS1J (ORCPT ); Mon, 17 Jan 2022 13:27:09 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37528 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235551AbiAQS1E (ORCPT ); Mon, 17 Jan 2022 13:27:04 -0500 Received: from mail-ed1-x529.google.com (mail-ed1-x529.google.com [IPv6:2a00:1450:4864:20::529]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CB612C06173F for ; Mon, 17 Jan 2022 10:27:03 -0800 (PST) Received: by mail-ed1-x529.google.com with SMTP id c71so69218168edf.6 for ; Mon, 17 Jan 2022 10:27:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=cKwU2z0WzA6eXQxgtc3caEqVcpArN/pRGPxwhgA1Nc4=; b=YTt7Qi7y/uU1VdwxKGR/sNUDhDVueC1mcA/WpAjQ9pPOiXP4tVdnt0G0LfVX1EOq2J G+1VR4LBQ5d1z6WbledtfytoOVB6nEW4eFjQybcjraXgnMl/Edx83ZCq149HbhDeQai7 KCXAj+bC2Fk3bB9G4Gtlt+euMbd1IoqkiKYGk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=cKwU2z0WzA6eXQxgtc3caEqVcpArN/pRGPxwhgA1Nc4=; b=X11DbVhMPDWUCa4b0dSKj8puKiZWPMOmAi4M5rCqlWuGTvnNUmBojlxLdjPZf93kx3 8PwYfEbjwO16rmy0qITHftDzK5K5ePt3AR+vOMrNYaX4q2hMehSyLwzuqNmaaCDEMrAZ /ysynVaD5mfacTot8HZ8p36Vz0jw4iSFGKrBlplKBpVWZStJFEkllEPyJ+N2TRg2687X ekGNnanB2qV8b9ePNqbFV6tsE0FKn7SUs/0srW+PHd3jIOYJs7G2OevxfTkOGk4RrHai GUhVQTo0rQpgyiVHKy9H7CCxBw8FXUMdxd6zZkj7IBnnX7gL9zw/LU2mR9ROJjM6b4lo CLVQ== X-Gm-Message-State: AOAM532YZwjmGFMKO5ExA4QQRATyv/LsJKNGNz20eqFZk+XZp2tnptzq z/Uil12KlGz+wAuFL1InUaKyJQ== X-Google-Smtp-Source: ABdhPJzg0fiKPTbN7d9qhzbpAB13l0/jmPcmZm5H77obfav/9qZ6paGnpcIS0mqhaE+W202LBpGezw== X-Received: by 2002:a17:906:e295:: with SMTP id gg21mr18308367ejb.375.1642444022462; Mon, 17 Jan 2022 10:27:02 -0800 (PST) Received: from alco.lan (80.71.134.83.ipv4.parknet.dk. [80.71.134.83]) by smtp.gmail.com with ESMTPSA id la10sm4657462ejc.22.2022.01.17.10.27.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Jan 2022 10:27:02 -0800 (PST) From: Ricardo Ribalda To: Nicolas Dufresne , Laurent Pinchart , Hans Verkuil , Sergey Senozhatsky , linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, tfiga@chromium.org, Mauro Carvalho Chehab Cc: Ricardo Ribalda Subject: [PATCH v3 1/3] media: v4l2-dev.c: Add Meta: to the name of metadata devices Date: Mon, 17 Jan 2022 19:26:56 +0100 Message-Id: <20220117182658.468993-2-ribalda@chromium.org> X-Mailer: git-send-email 2.34.1.703.g22d0c6ccf7-goog In-Reply-To: <20220117182658.468993-1-ribalda@chromium.org> References: <20220117182658.468993-1-ribalda@chromium.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Devices with Metadata output (like uvc), create two video devices, one for the data itself and another one for the metadata. Add a "Meta: " to the beginning of the device name, as suggested by Mauro, to avoid having multiple devices with the same name. Fixes v4l2-compliance: Media Controller ioctls: fail: v4l2-test-media.cpp(205): v2_entity_names_set.find(key) !=3D v2_= entity_names_set.end() test MEDIA_IOC_G_TOPOLOGY: FAIL fail: v4l2-test-media.cpp(394): num_data_links !=3D num_links test MEDIA_IOC_ENUM_ENTITIES/LINKS: FAIL Suggested-by: Mauro Carvalho Chehab Signed-off-by: Ricardo Ribalda --- drivers/media/v4l2-core/v4l2-dev.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/media/v4l2-core/v4l2-dev.c b/drivers/media/v4l2-core/v= 4l2-dev.c index d03ace324db0..98be80010702 100644 --- a/drivers/media/v4l2-core/v4l2-dev.c +++ b/drivers/media/v4l2-core/v4l2-dev.c @@ -901,6 +901,15 @@ int __video_register_device(struct video_device *vdev, if (WARN_ON(type !=3D VFL_TYPE_SUBDEV && !vdev->device_caps)) return -EINVAL; =20 + /* Add Meta: to metadata device names */ + if (vdev->device_caps & + (V4L2_CAP_META_CAPTURE | V4L2_CAP_META_OUTPUT)) { + char aux[sizeof(vdev->name)]; + + snprintf(aux, sizeof(aux), "Meta: %s", vdev->name); + strscpy(vdev->name, aux, sizeof(aux)); + } + /* v4l2_fh support */ spin_lock_init(&vdev->fh_lock); INIT_LIST_HEAD(&vdev->fh_list); --=20 2.34.1.703.g22d0c6ccf7-goog From nobody Tue Jun 30 12:08:06 2026 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 6C80FC433F5 for ; Mon, 17 Jan 2022 18:27:22 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S242703AbiAQS1V (ORCPT ); Mon, 17 Jan 2022 13:27:21 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37532 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S242535AbiAQS1E (ORCPT ); Mon, 17 Jan 2022 13:27:04 -0500 Received: from mail-ed1-x52e.google.com (mail-ed1-x52e.google.com [IPv6:2a00:1450:4864:20::52e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7B0C2C061746 for ; Mon, 17 Jan 2022 10:27:04 -0800 (PST) Received: by mail-ed1-x52e.google.com with SMTP id g22so22689003edu.1 for ; Mon, 17 Jan 2022 10:27:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=eO3SarKuawfnSDlycroRnbnpPkYTlr8nD5yeqFUVHFc=; b=O42iWlmqZFfrZT1YQH9NZLLqWeHsjrezFg0IKlF+MbOJe+MmgTCMTBO6BLj86ZhqgZ Ktth5BBRygqea9NiPD3Du+Dp9tbZhmz4BgHQMpWRrgnxtjXP18bxvCJP0qh5SIp85N8t En/NuGe+o1wwdA2DLdNhasLj4fF3Z4BBqsEuE= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=eO3SarKuawfnSDlycroRnbnpPkYTlr8nD5yeqFUVHFc=; b=WZy0EjaA3aikwcqcRLYtceOCQoU8qCXjYCylwNbqt40sZ8wXWrrhMjleZj80WMTb9t QIwEjk+biRfW4Ob3sS549gUKMqt1JR9M49TmuDUtwdpu/n57Zjf/uyiSt7K8EVEauv6H Ws8gQJYMT6U8nuBfxOVK84ti4d+5ja+SNzj2nTyX0crDuiOL6Vp3KtUfnEV5B+BRa3XL kgWT2CP9KXhGbN/kLT7SM34RL82KCisKK4MfEOHXkC/4T+fwoyiSs7xGU2E/KCAuKsd3 MF0TFDxfbFiMkA+CkOyVSmFk+CRT/DiFC9xWp4fur3e8M0dk2jxIDVChr/CwpeCm+FPI IxBg== X-Gm-Message-State: AOAM530qzZjMGLEpm9Spb1LrYBr2J+Rx4JdZFnmVl88OOv8x8L/B2U5e GADFOdqjLi3daKg/vtuH8bO6Dw== X-Google-Smtp-Source: ABdhPJznsIxpLjJR/d/R7v1Oul8vJd4+xCZf+aPIqc6VC6qHoTTYJ7sDnbKhxaNfBngrSRolsMd80Q== X-Received: by 2002:a17:906:175b:: with SMTP id d27mr17982456eje.476.1642444023056; Mon, 17 Jan 2022 10:27:03 -0800 (PST) Received: from alco.lan (80.71.134.83.ipv4.parknet.dk. [80.71.134.83]) by smtp.gmail.com with ESMTPSA id la10sm4657462ejc.22.2022.01.17.10.27.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Jan 2022 10:27:02 -0800 (PST) From: Ricardo Ribalda To: Nicolas Dufresne , Laurent Pinchart , Hans Verkuil , Sergey Senozhatsky , linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, tfiga@chromium.org, Mauro Carvalho Chehab Cc: Ricardo Ribalda Subject: [PATCH v3 2/3] media: Documentation/driver-api: Document device name Date: Mon, 17 Jan 2022 19:26:57 +0100 Message-Id: <20220117182658.468993-3-ribalda@chromium.org> X-Mailer: git-send-email 2.34.1.703.g22d0c6ccf7-goog In-Reply-To: <20220117182658.468993-1-ribalda@chromium.org> References: <20220117182658.468993-1-ribalda@chromium.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Document how the name of the metadata devices is modified. Signed-off-by: Ricardo Ribalda --- Documentation/driver-api/media/v4l2-dev.rst | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Documentation/driver-api/media/v4l2-dev.rst b/Documentation/dr= iver-api/media/v4l2-dev.rst index 99e3b5fa7444..935a46e29c5e 100644 --- a/Documentation/driver-api/media/v4l2-dev.rst +++ b/Documentation/driver-api/media/v4l2-dev.rst @@ -42,7 +42,9 @@ You should also set these fields of :c:type:`video_device= `: - :c:type:`video_device`->v4l2_dev: must be set to the :c:type:`v4l2_devic= e` parent device. =20 -- :c:type:`video_device`->name: set to something descriptive and unique. +- :c:type:`video_device`->name: set to something descriptive and unique. I= f the + device has the `V4L2_CAP_META_CAPTURE` or `V4L2_CAP_META_OUTPUT` capabil= ities, + the string `Meta:` will be inserted before the original name. =20 - :c:type:`video_device`->vfl_dir: set this to ``VFL_DIR_RX`` for capture devices (``VFL_DIR_RX`` has value 0, so this is normally already the --=20 2.34.1.703.g22d0c6ccf7-goog From nobody Tue Jun 30 12:08:06 2026 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 F2617C433F5 for ; Mon, 17 Jan 2022 18:27:17 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S242650AbiAQS1Q (ORCPT ); Mon, 17 Jan 2022 13:27:16 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37542 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S242553AbiAQS1G (ORCPT ); Mon, 17 Jan 2022 13:27:06 -0500 Received: from mail-ed1-x532.google.com (mail-ed1-x532.google.com [IPv6:2a00:1450:4864:20::532]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id AA10AC06161C for ; Mon, 17 Jan 2022 10:27:05 -0800 (PST) Received: by mail-ed1-x532.google.com with SMTP id c71so69218377edf.6 for ; Mon, 17 Jan 2022 10:27:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=RBVuDCA6PxzAB8/6X14DD9e2DOq4VKxggXT7kBuz94I=; b=gXoyLaUc9QSPqYBy++Rm9nffYp7MQ+aG93TwTnQXgWNVvR5bnNpAiQ6V2eyEgsG3h8 GzUMl1mAHixJqPxrmf6awkMrxdhbK5Ep0mluJXR12HMH5y+yC65RZgdxdeFn3fr/dPhm 7UYdvoJLa9+bb1iAIMr6CDvwwlqZOBPPCWm8U= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=RBVuDCA6PxzAB8/6X14DD9e2DOq4VKxggXT7kBuz94I=; b=6j2VKrIXCkqSt4Mj8ZbNfhwnHXw6eHzc9aCl4bAsWix5qVo0fHkKol6u/0pHNnRFja QmXbJ/n7gGi39Ayb7qrkGsMzIzMnP/2MbzwwejGaAi2e7XRAZEcPqdoPrBFo+yFtaNuX C0bo9+O6o2Q4RKII+AeOZesHkDs5UkIZD8EPF3qKqSzdSE+Kl+PbO5qNrTTqwXUYbOVc g7TIiHTK8xZpK/nPxqPKJ3/dbrwU4F7jNDyHzaIzxrFruTTjbrYqsm4YIWOzVAQeb5QT bRve+gwPbQ6Sfy9Iuj+upttBNIvOgwwhF/lBZTF0k5xhRoJ65LCdLYdFWLyrVF8S69YU NDGQ== X-Gm-Message-State: AOAM532FSUfJcbD4802gpp31+6wYxcHXOa3EsRHkFgeQdMGKygttGBZm jo62LONwsgxo2hAdETWsqIf1eg== X-Google-Smtp-Source: ABdhPJxeScoNGqmuzJThlqjZB8RrFK16Y1iV+pilzVolfnayqinWPv1BRPufi97+Y9EfeJ9NnE9ojQ== X-Received: by 2002:a17:907:1007:: with SMTP id ox7mr15959810ejb.533.1642444023909; Mon, 17 Jan 2022 10:27:03 -0800 (PST) Received: from alco.lan (80.71.134.83.ipv4.parknet.dk. [80.71.134.83]) by smtp.gmail.com with ESMTPSA id la10sm4657462ejc.22.2022.01.17.10.27.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Jan 2022 10:27:03 -0800 (PST) From: Ricardo Ribalda To: Nicolas Dufresne , Laurent Pinchart , Hans Verkuil , Sergey Senozhatsky , linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, tfiga@chromium.org, Mauro Carvalho Chehab Cc: Ricardo Ribalda Subject: [PATCH v3 3/3] media: uvcvideo: Add a unique suffix to camera names Date: Mon, 17 Jan 2022 19:26:58 +0100 Message-Id: <20220117182658.468993-4-ribalda@chromium.org> X-Mailer: git-send-email 2.34.1.703.g22d0c6ccf7-goog In-Reply-To: <20220117182658.468993-1-ribalda@chromium.org> References: <20220117182658.468993-1-ribalda@chromium.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Some cameras have multiple data inputs (i.e. IR sensor and RGB sensor), append a unique number to the device name. Fixes v4l2-compliance: Media Controller ioctls: fail: v4l2-test-media.cpp(205): v2_entity_names_set.find(key) !=3D= v2_entity_names_set.end() test MEDIA_IOC_G_TOPOLOGY: FAIL fail: v4l2-test-media.cpp(394): num_data_links !=3D num_links test MEDIA_IOC_ENUM_ENTITIES/LINKS: FAIL Signed-off-by: Ricardo Ribalda --- drivers/media/usb/uvc/uvc_driver.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/media/usb/uvc/uvc_driver.c b/drivers/media/usb/uvc/uvc= _driver.c index 5f394d4efc21..b17569fc4264 100644 --- a/drivers/media/usb/uvc/uvc_driver.c +++ b/drivers/media/usb/uvc/uvc_driver.c @@ -2232,7 +2232,8 @@ int uvc_register_video_device(struct uvc_device *dev, break; } =20 - strscpy(vdev->name, dev->name, sizeof(vdev->name)); + snprintf(vdev->name, sizeof(vdev->name), "%s %u", dev->name, + stream->header.bTerminalLink); =20 /* * Set the driver data before calling video_register_device, otherwise --=20 2.34.1.703.g22d0c6ccf7-goog