Received: by 2002:a05:6358:9144:b0:117:f937:c515 with SMTP id r4csp580260rwr; Thu, 20 Apr 2023 03:44:01 -0700 (PDT) X-Google-Smtp-Source: AKy350Z/AWE8R22gR5OTOMXpUYCwIPYI4xuBTlRfoHHjPJ+Ha0Gt8KWD793CYwYBGyTp+KG9fqhd X-Received: by 2002:a17:903:246:b0:19f:3b86:4715 with SMTP id j6-20020a170903024600b0019f3b864715mr1200411plh.8.1681987441419; Thu, 20 Apr 2023 03:44:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1681987441; cv=none; d=google.com; s=arc-20160816; b=bjf3WQKrpSIub+df3l+1zNwevT4UTgST17XL2OEXdlZFtayAETdBTA6cee1sbNwPnz kyT3dxIa42UW0f5KeSrKLDHMann8TlxXfsEocA7sp65w0o5a/2lbYrcAFZ750gsoDr1z OCjhK7esW5+mda4ZdxtoXcAqS6ylXDtM0YIjSvt/6fJ7TWRToDk5K4S3giwVlhldOGwg MIEOJaB0FhlGw+KVtOpjgSkgBEtHzPlUCSgqOz5JNUfPI8c2R1E8cyvBd6o2Rky2bmxl a3xzNTlDFsMmPtgK0bO9m0yDixsvcKjrVsrDnH5/RM0XQHPmNIHz/L9hGSjiz9wP45vX BiBg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=rf2sfICVhOrF2v6lbJXq2rgfFQ7yHsXlftUWb0PedCw=; b=t1wOyImqi9D5QMKUuFgEbrufWlGvJpkYXq/3Qm/taLPjK7STV8PBSbL2QK+GS1xb2y R+IdwY7IogNcNcq6IVzj/z0HXi1BCjlFolfCuHnGbXcAFRUwFlEN6/yjEQRIzGmkW/p8 0VIYpIhtcdkRcLIh7eSYGDk9prHX4T0lJ/l50Q9f9con0ks3pvl1kwA5+XVYrM/O9htK B0x/9OvjiSOJZaFHriHa4UGJOulqhXxBTYDRZzM8EZM1mPyoIqs4xeFQxObTdzIRJB/F ou8MSRZSG1POI5VHKIhB0Hs41q8h6GWlhqgjFDCy/xitn50qhNb0h7fVMfOqPSwJiicN uh/w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=goLCMkQR; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id ik8-20020a170902ab0800b001a6458c9f96si1725224plb.37.2023.04.20.03.43.49; Thu, 20 Apr 2023 03:44:01 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=goLCMkQR; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234890AbjDTKeZ (ORCPT + 99 others); Thu, 20 Apr 2023 06:34:25 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45876 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234837AbjDTKeA (ORCPT ); Thu, 20 Apr 2023 06:34:00 -0400 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3E5A33A8E; Thu, 20 Apr 2023 03:31:33 -0700 (PDT) Received: from pendragon.ideasonboard.com (133-32-181-51.west.xps.vectant.ne.jp [133.32.181.51]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id AA6295AA; Thu, 20 Apr 2023 12:31:23 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1681986684; bh=tjVakFAz0Ke+8se6BRvkXETbHQDz2JkaQ00st7I+unQ=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=goLCMkQRNxIRsJSzE8F1qhc5PVyKdH41mFbJtQWehPpdzrr+sXBA5BkTOPBwK0rYh RV8YdxJCymGObZGIJ1ie/+kWmhfqd+EoO4gqW0oUndlztjZ6tl46qyqsFxMLktBIG6 eL77XBJbsQZKS7klEuM1uoChG0QM1lKZnNO7rG8M= Date: Thu, 20 Apr 2023 13:31:43 +0300 From: Laurent Pinchart To: Dmitry Perchanov Cc: linux-media@vger.kernel.org, mchehab@kernel.org, linux-kernel@vger.kernel.org, evgeni.raikhel@intel.com, demisrael@gmail.com, sakari.ailus@iki.fi Subject: Re: [PATCH v3] media: uvcvideo: Enable Intel RealSense metadata for devices. Message-ID: <20230420103143.GB11005@pendragon.ideasonboard.com> References: <5587a4f1a0a7f3e2bd0ce886bb4ee3bcbf8f522a.camel@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <5587a4f1a0a7f3e2bd0ce886bb4ee3bcbf8f522a.camel@intel.com> X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_PASS,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Dmitry, Thank you for the patch. On Thu, Apr 20, 2023 at 12:06:55PM +0300, Dmitry Perchanov wrote: > Intel RealSense UVC Depth cameras produce metadata in a > vendor-specific format that is already supported by the uvcvideo driver. > Enable handling of this metadata for 7 additional RealSense devices. > > Co-developed-by: Yu MENG > Co-developed-by: Evgeni Raikhel > Signed-off-by: Dmitry Perchanov Reviewed-by: Laurent Pinchart I will wait for the answer to Sakari's question before merging this though. > --- > drivers/media/usb/uvc/uvc_driver.c | 63 ++++++++++++++++++++++++++++++ > 1 file changed, 63 insertions(+) > > diff --git a/drivers/media/usb/uvc/uvc_driver.c b/drivers/media/usb/uvc/uvc_driver.c > index 7aefa76a42b3..f69573e2de96 100644 > --- a/drivers/media/usb/uvc/uvc_driver.c > +++ b/drivers/media/usb/uvc/uvc_driver.c > @@ -3014,6 +3014,33 @@ static const struct usb_device_id uvc_ids[] = { > .bInterfaceSubClass = 1, > .bInterfaceProtocol = 0, > .driver_info = (kernel_ulong_t)&uvc_ctrl_power_line_limited }, > + /* Intel D410/ASR depth camera */ > + { .match_flags = USB_DEVICE_ID_MATCH_DEVICE > + | USB_DEVICE_ID_MATCH_INT_INFO, > + .idVendor = 0x8086, > + .idProduct = 0x0ad2, > + .bInterfaceClass = USB_CLASS_VIDEO, > + .bInterfaceSubClass = 1, > + .bInterfaceProtocol = 0, > + .driver_info = UVC_INFO_META(V4L2_META_FMT_D4XX) }, > + /* Intel D415/ASRC depth camera */ > + { .match_flags = USB_DEVICE_ID_MATCH_DEVICE > + | USB_DEVICE_ID_MATCH_INT_INFO, > + .idVendor = 0x8086, > + .idProduct = 0x0ad3, > + .bInterfaceClass = USB_CLASS_VIDEO, > + .bInterfaceSubClass = 1, > + .bInterfaceProtocol = 0, > + .driver_info = UVC_INFO_META(V4L2_META_FMT_D4XX) }, > + /* Intel D430/AWG depth camera */ > + { .match_flags = USB_DEVICE_ID_MATCH_DEVICE > + | USB_DEVICE_ID_MATCH_INT_INFO, > + .idVendor = 0x8086, > + .idProduct = 0x0ad4, > + .bInterfaceClass = USB_CLASS_VIDEO, > + .bInterfaceSubClass = 1, > + .bInterfaceProtocol = 0, > + .driver_info = UVC_INFO_META(V4L2_META_FMT_D4XX) }, > /* Intel RealSense D4M */ > { .match_flags = USB_DEVICE_ID_MATCH_DEVICE > | USB_DEVICE_ID_MATCH_INT_INFO, > @@ -3023,6 +3050,42 @@ static const struct usb_device_id uvc_ids[] = { > .bInterfaceSubClass = 1, > .bInterfaceProtocol = 0, > .driver_info = UVC_INFO_META(V4L2_META_FMT_D4XX) }, > + /* Intel D435/AWGC depth camera */ > + { .match_flags = USB_DEVICE_ID_MATCH_DEVICE > + | USB_DEVICE_ID_MATCH_INT_INFO, > + .idVendor = 0x8086, > + .idProduct = 0x0b07, > + .bInterfaceClass = USB_CLASS_VIDEO, > + .bInterfaceSubClass = 1, > + .bInterfaceProtocol = 0, > + .driver_info = UVC_INFO_META(V4L2_META_FMT_D4XX) }, > + /* Intel D435i depth camera */ > + { .match_flags = USB_DEVICE_ID_MATCH_DEVICE > + | USB_DEVICE_ID_MATCH_INT_INFO, > + .idVendor = 0x8086, > + .idProduct = 0x0b3a, > + .bInterfaceClass = USB_CLASS_VIDEO, > + .bInterfaceSubClass = 1, > + .bInterfaceProtocol = 0, > + .driver_info = UVC_INFO_META(V4L2_META_FMT_D4XX) }, > + /* Intel D405 Depth Camera */ > + { .match_flags = USB_DEVICE_ID_MATCH_DEVICE > + | USB_DEVICE_ID_MATCH_INT_INFO, > + .idVendor = 0x8086, > + .idProduct = 0x0b5b, > + .bInterfaceClass = USB_CLASS_VIDEO, > + .bInterfaceSubClass = 1, > + .bInterfaceProtocol = 0, > + .driver_info = UVC_INFO_META(V4L2_META_FMT_D4XX) }, > + /* Intel D455 Depth Camera */ > + { .match_flags = USB_DEVICE_ID_MATCH_DEVICE > + | USB_DEVICE_ID_MATCH_INT_INFO, > + .idVendor = 0x8086, > + .idProduct = 0x0b5c, > + .bInterfaceClass = USB_CLASS_VIDEO, > + .bInterfaceSubClass = 1, > + .bInterfaceProtocol = 0, > + .driver_info = UVC_INFO_META(V4L2_META_FMT_D4XX) }, > /* Generic USB Video Class */ > { USB_INTERFACE_INFO(USB_CLASS_VIDEO, 1, UVC_PC_PROTOCOL_UNDEFINED) }, > { USB_INTERFACE_INFO(USB_CLASS_VIDEO, 1, UVC_PC_PROTOCOL_15) }, -- Regards, Laurent Pinchart