[{"id":11977,"web_url":"https://patchwork.libcamera.org/comment/11977/","msgid":"<f241b6df-4529-8a0c-2bd3-ea54f395acc7@ideasonboard.com>","date":"2020-08-11T14:19:24","subject":"Re: [libcamera-devel] [PATCH v2 1/4] libcamera: pipeline: uvcvideo:\n\tTreat all UVC cameras as external","submitter":{"id":4,"url":"https://patchwork.libcamera.org/api/people/4/","name":"Kieran Bingham","email":"kieran.bingham@ideasonboard.com"},"content":"Hi Umang,\n\nOn 10/08/2020 13:04, Umang Jain wrote:\n> Treat all UVC cameras as external for android framework to know that\n> they are external.\n> \n> Signed-off-by: Umang Jain <email@uajain.com>\n> ---\n>  src/libcamera/pipeline/uvcvideo/uvcvideo.cpp | 4 ++++\n>  1 file changed, 4 insertions(+)\n> \n> diff --git a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp\n> index bc892ec..ed61d12 100644\n> --- a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp\n> +++ b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp\n> @@ -14,6 +14,7 @@\n>  #include <libcamera/camera.h>\n>  #include <libcamera/control_ids.h>\n>  #include <libcamera/controls.h>\n> +#include <libcamera/property_ids.h>\n>  #include <libcamera/request.h>\n>  #include <libcamera/stream.h>\n>  \n> @@ -500,6 +501,9 @@ int UVCCameraData::init(MediaEntity *entity)\n>  \n>  \tvideo_->bufferReady.connect(this, &UVCCameraData::bufferReady);\n>  \n> +\t/* Initialise Camera Property. Treat all UVC cameras as external. */\n\nProbably don't need to say \"Initialise Camera Property\", but either way.\n\nReviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n\n> +\tproperties_.set(properties::Location, properties::CameraLocationExternal);\n> +\n>  \t/* Initialise the supported controls. */\n>  \tControlInfoMap::Map ctrls;\n>  \n>","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id EB4C4BD87D\n\tfor <parsemail@patchwork.libcamera.org>;\n\tTue, 11 Aug 2020 14:19:29 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 6F20C60DCA;\n\tTue, 11 Aug 2020 16:19:29 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 4589A6055A\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue, 11 Aug 2020 16:19:28 +0200 (CEST)","from [192.168.0.20]\n\t(cpc89244-aztw30-2-0-cust3082.18-1.cable.virginm.net [86.31.172.11])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id A3BB99A8;\n\tTue, 11 Aug 2020 16:19:27 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"u04F6DuC\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1597155567;\n\tbh=WFDOFy6UFPrAvukpHYRuFmlx8PNktb64ViG+yfdHNqs=;\n\th=Reply-To:Subject:To:References:From:Date:In-Reply-To:From;\n\tb=u04F6DuCFqimwrfPixf1g5K1sfFvurbGvvms0uaLE+hQxzOtZ2kp6eSin7GGo88vK\n\tNGUE38Z37DlqXV5gPCqZNq6/hJkZC5u+SOLEN8D9itXEpCRd6ej+h/5vCkFQvfgOIe\n\tvDNUpzU+fu+z+g4V8WuGRyA6/8CaSLmbBfpYEs9c=","To":"Umang Jain <email@uajain.com>, libcamera-devel@lists.libcamera.org","References":"<20200810120406.52654-1-email@uajain.com>\n\t<20200810120406.52654-2-email@uajain.com>","From":"Kieran Bingham <kieran.bingham@ideasonboard.com>","Autocrypt":"addr=kieran.bingham@ideasonboard.com; keydata=\n\t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\n\tWZw01QYHU/GUV/zHJSFk","Organization":"Ideas on Board","Message-ID":"<f241b6df-4529-8a0c-2bd3-ea54f395acc7@ideasonboard.com>","Date":"Tue, 11 Aug 2020 15:19:24 +0100","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101\n\tThunderbird/68.10.0","MIME-Version":"1.0","In-Reply-To":"<20200810120406.52654-2-email@uajain.com>","Content-Language":"en-GB","Subject":"Re: [libcamera-devel] [PATCH v2 1/4] libcamera: pipeline: uvcvideo:\n\tTreat all UVC cameras as external","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Reply-To":"kieran.bingham@ideasonboard.com","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":11979,"web_url":"https://patchwork.libcamera.org/comment/11979/","msgid":"<20200811144254.GA17446@pendragon.ideasonboard.com>","date":"2020-08-11T14:42:54","subject":"Re: [libcamera-devel] [PATCH v2 1/4] libcamera: pipeline: uvcvideo:\n\tTreat all UVC cameras as external","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hello,\n\nOn Tue, Aug 11, 2020 at 03:19:24PM +0100, Kieran Bingham wrote:\n> On 10/08/2020 13:04, Umang Jain wrote:\n> > Treat all UVC cameras as external for android framework to know that\n> > they are external.\n> > \n> > Signed-off-by: Umang Jain <email@uajain.com>\n> > ---\n> >  src/libcamera/pipeline/uvcvideo/uvcvideo.cpp | 4 ++++\n> >  1 file changed, 4 insertions(+)\n> > \n> > diff --git a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp\n> > index bc892ec..ed61d12 100644\n> > --- a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp\n> > +++ b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp\n> > @@ -14,6 +14,7 @@\n> >  #include <libcamera/camera.h>\n> >  #include <libcamera/control_ids.h>\n> >  #include <libcamera/controls.h>\n> > +#include <libcamera/property_ids.h>\n> >  #include <libcamera/request.h>\n> >  #include <libcamera/stream.h>\n> >  \n> > @@ -500,6 +501,9 @@ int UVCCameraData::init(MediaEntity *entity)\n> >  \n> >  \tvideo_->bufferReady.connect(this, &UVCCameraData::bufferReady);\n> >  \n> > +\t/* Initialise Camera Property. Treat all UVC cameras as external. */\n> \n> Probably don't need to say \"Initialise Camera Property\", but either way.\n\nBest would be to add a todo item to explain what will need to change.\n\n\t/*\n\t * \\todo Find a way to tell internal and external UVC cameras apart.\n\t * Until then, treat all UVC cameras as external.\n\t */\n\nReviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n\n> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n> \n> > +\tproperties_.set(properties::Location, properties::CameraLocationExternal);\n> > +\n> >  \t/* Initialise the supported controls. */\n> >  \tControlInfoMap::Map ctrls;\n> >","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 7CE8FBD87C\n\tfor <parsemail@patchwork.libcamera.org>;\n\tTue, 11 Aug 2020 14:43:10 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id D5DDC61028;\n\tTue, 11 Aug 2020 16:43:09 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 94FE36055A\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue, 11 Aug 2020 16:43:08 +0200 (CEST)","from pendragon.ideasonboard.com (62-78-145-57.bb.dnainternet.fi\n\t[62.78.145.57])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 0D03F9A8;\n\tTue, 11 Aug 2020 16:43:07 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"UIoPcJTF\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1597156988;\n\tbh=paJV30CJxIay51n/KdZneKTBbrdrB/fyCgjKb275j20=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=UIoPcJTFRBfM/zhc7TblCK04OVr30uvZS31g0HK9iQ8wmQo/pi200TEsczHeNOyUc\n\taD89dLayvGPiR87h8CH4EIrrrV4teW3DQhpZMUnP4HBs9bCQNVdYlKbVGCS8i1WLxQ\n\tHHL8XkuhspiZfx7v6YxU+raXA4eys+ofWjQiGzE0=","Date":"Tue, 11 Aug 2020 17:42:54 +0300","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"Kieran Bingham <kieran.bingham@ideasonboard.com>","Message-ID":"<20200811144254.GA17446@pendragon.ideasonboard.com>","References":"<20200810120406.52654-1-email@uajain.com>\n\t<20200810120406.52654-2-email@uajain.com>\n\t<f241b6df-4529-8a0c-2bd3-ea54f395acc7@ideasonboard.com>","MIME-Version":"1.0","Content-Disposition":"inline","In-Reply-To":"<f241b6df-4529-8a0c-2bd3-ea54f395acc7@ideasonboard.com>","Subject":"Re: [libcamera-devel] [PATCH v2 1/4] libcamera: pipeline: uvcvideo:\n\tTreat all UVC cameras as external","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Cc":"libcamera-devel@lists.libcamera.org","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":11981,"web_url":"https://patchwork.libcamera.org/comment/11981/","msgid":"<20200813103114.GD1061689@oden.dyn.berto.se>","date":"2020-08-13T10:31:14","subject":"Re: [libcamera-devel] [PATCH v2 1/4] libcamera: pipeline: uvcvideo:\n\tTreat all UVC cameras as external","submitter":{"id":5,"url":"https://patchwork.libcamera.org/api/people/5/","name":"Niklas Söderlund","email":"niklas.soderlund@ragnatech.se"},"content":"Hi Umang,\n\nThanks for your work.\n\nOn 2020-08-10 12:04:11 +0000, Umang Jain wrote:\n> Treat all UVC cameras as external for android framework to know that\n> they are external.\n\nnit: I would rewrite this to describe that as we currently have no way \nto determine the location if a UVC camera mark it External to have a \nstarting point for the property.\n\nWith or without this fixed but with the comments by Kieran and Laurent \nfixed,\n\nReviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>\n\n> \n> Signed-off-by: Umang Jain <email@uajain.com>\n> ---\n>  src/libcamera/pipeline/uvcvideo/uvcvideo.cpp | 4 ++++\n>  1 file changed, 4 insertions(+)\n> \n> diff --git a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp\n> index bc892ec..ed61d12 100644\n> --- a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp\n> +++ b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp\n> @@ -14,6 +14,7 @@\n>  #include <libcamera/camera.h>\n>  #include <libcamera/control_ids.h>\n>  #include <libcamera/controls.h>\n> +#include <libcamera/property_ids.h>\n>  #include <libcamera/request.h>\n>  #include <libcamera/stream.h>\n>  \n> @@ -500,6 +501,9 @@ int UVCCameraData::init(MediaEntity *entity)\n>  \n>  \tvideo_->bufferReady.connect(this, &UVCCameraData::bufferReady);\n>  \n> +\t/* Initialise Camera Property. Treat all UVC cameras as external. */\n> +\tproperties_.set(properties::Location, properties::CameraLocationExternal);\n> +\n>  \t/* Initialise the supported controls. */\n>  \tControlInfoMap::Map ctrls;\n>  \n> -- \n> 2.26.2\n> \n> _______________________________________________\n> libcamera-devel mailing list\n> libcamera-devel@lists.libcamera.org\n> https://lists.libcamera.org/listinfo/libcamera-devel","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id D5962BD87C\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 13 Aug 2020 10:31:18 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 5112861394;\n\tThu, 13 Aug 2020 12:31:18 +0200 (CEST)","from mail-lj1-x244.google.com (mail-lj1-x244.google.com\n\t[IPv6:2a00:1450:4864:20::244])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 0CBBD6038C\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 13 Aug 2020 12:31:16 +0200 (CEST)","by mail-lj1-x244.google.com with SMTP id w14so5608556ljj.4\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 13 Aug 2020 03:31:15 -0700 (PDT)","from localhost (h-209-203.A463.priv.bahnhof.se. [155.4.209.203])\n\tby smtp.gmail.com with ESMTPSA id\n\tk84sm1120682lfd.90.2020.08.13.03.31.14\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tThu, 13 Aug 2020 03:31:14 -0700 (PDT)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=ragnatech-se.20150623.gappssmtp.com\n\theader.i=@ragnatech-se.20150623.gappssmtp.com\n\theader.b=\"AAvoUUiX\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=ragnatech-se.20150623.gappssmtp.com; s=20150623;\n\th=date:from:to:cc:subject:message-id:references:mime-version\n\t:content-disposition:content-transfer-encoding:in-reply-to;\n\tbh=uC93UkwCf9JlXkKNw1VQI9448TV+NJeyGf6Tm7Kt7kY=;\n\tb=AAvoUUiXaWshvpsB5cw1zDk1wFsVLH1WLGrjkOiOCMa1VaaVnNuv+vuF7Jg2pqtXLf\n\tlcrpnV1cgtqmGJBwxt6gcQw5oPvMN8lJjkuYKZoiQaiB7en1yf85g1mZQ1NhelP1Sqxh\n\twCz/VzeXFkOa0apHVBpj5/WVr2lSMo+QMIC1DFkuihUZUvo/BYUa+t9K1cEu8itbvRgC\n\tBUHIQqBUJ2scUF7+YQN1QroNi9LVpqWryuXkvFRkYD6QwV35RI7A4FKLnm5Hw9dmn25m\n\ttR7tA+cnXMRwewpLGwywQWecjkh7kYgvg52kZZoKlmsqdkmUJNyz33RSG6M1SwMzhhAJ\n\t7Kkw==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:date:from:to:cc:subject:message-id:references\n\t:mime-version:content-disposition:content-transfer-encoding\n\t:in-reply-to;\n\tbh=uC93UkwCf9JlXkKNw1VQI9448TV+NJeyGf6Tm7Kt7kY=;\n\tb=SdrqQ1foB36DW3UInil67lmvad+BwOKVvYH/VRY9RqWR9plwvCrTnNLcv9fapy+9BG\n\thDDS5QFwulXEhZegt9givTgcjTRbDsqH/Dmu6EMPJkE3bXnMQJzYlrsnRDbJwIATiNuu\n\ttvEyo8KWLtoInFA+uMMUBJl+WoBo0DBN5VQCpU04AWosTPB1pDyzaOEY4BvvdtkQASA1\n\tT5KY5j8F9B8nwU730zz+WM0UMFgLR6DbqdZYj+Zy2QlOApwlzFqGY60yvBFu943qRUJt\n\tvSOhRVS0a1R07cUTD9NNsOJmvS/kA4CXE1u4QFCZW9zwqM1slRkkyMABVJoJIQH7zuqJ\n\tsxnQ==","X-Gm-Message-State":"AOAM5339eI1G8XI+odPchQ+WOI0pUd9EIVmIJA9Qbz1f4Oq9Ts+qmUDg\n\txWQBMMEQXyGHoSeAsOwUCOp3AsOZZTY=","X-Google-Smtp-Source":"ABdhPJxNPLLjvvhP+PnPn4Hp0c+8X/g46N2xwbeSBIkUfzAHYA+VPQdK7o6IeJEvt8dYAeSShADRxw==","X-Received":"by 2002:a2e:2d0a:: with SMTP id\n\tt10mr1611641ljt.249.1597314675197; \n\tThu, 13 Aug 2020 03:31:15 -0700 (PDT)","Date":"Thu, 13 Aug 2020 12:31:14 +0200","From":"Niklas =?iso-8859-1?q?S=F6derlund?= <niklas.soderlund@ragnatech.se>","To":"Umang Jain <email@uajain.com>","Message-ID":"<20200813103114.GD1061689@oden.dyn.berto.se>","References":"<20200810120406.52654-1-email@uajain.com>\n\t<20200810120406.52654-2-email@uajain.com>","MIME-Version":"1.0","Content-Disposition":"inline","In-Reply-To":"<20200810120406.52654-2-email@uajain.com>","Subject":"Re: [libcamera-devel] [PATCH v2 1/4] libcamera: pipeline: uvcvideo:\n\tTreat all UVC cameras as external","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Cc":"libcamera-devel@lists.libcamera.org","Content-Type":"text/plain; charset=\"iso-8859-1\"","Content-Transfer-Encoding":"quoted-printable","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":12000,"web_url":"https://patchwork.libcamera.org/comment/12000/","msgid":"<9c968df7-13ed-813a-cc3e-8d59beba99d1@ideasonboard.com>","date":"2020-08-13T19:11:18","subject":"Re: [libcamera-devel] [PATCH v2 1/4] libcamera: pipeline: uvcvideo:\n\tTreat all UVC cameras as external","submitter":{"id":4,"url":"https://patchwork.libcamera.org/api/people/4/","name":"Kieran Bingham","email":"kieran.bingham@ideasonboard.com"},"content":"Hi Umang,\n\nOn 13/08/2020 11:31, Niklas Söderlund wrote:\n> Hi Umang,\n> \n> Thanks for your work.\n> \n> On 2020-08-10 12:04:11 +0000, Umang Jain wrote:\n>> Treat all UVC cameras as external for android framework to know that\n>> they are external.\n> \n> nit: I would rewrite this to describe that as we currently have no way \n> to determine the location if a UVC camera mark it External to have a \n> starting point for the property.\n> \n> With or without this fixed but with the comments by Kieran and Laurent \n> fixed,\n> \n> Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>\n\nSo, having seen the conflict this might cause with camera naming, I\nwonder if we should introduce a new property called \"hotpluggable\" or\n\"removable\" or such in a separate patch, and then set that property here.\n\nI'm not entirely sure yet, because I fear android expects the difference\nto be 'internal/external' rather than 'hotpluggable/not-hotpluggable'.\n\nWhat do you think ?\n\n--\nKieran\n\n\n\n>>\n>> Signed-off-by: Umang Jain <email@uajain.com>\n>> ---\n>>  src/libcamera/pipeline/uvcvideo/uvcvideo.cpp | 4 ++++\n>>  1 file changed, 4 insertions(+)\n>>\n>> diff --git a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp\n>> index bc892ec..ed61d12 100644\n>> --- a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp\n>> +++ b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp\n>> @@ -14,6 +14,7 @@\n>>  #include <libcamera/camera.h>\n>>  #include <libcamera/control_ids.h>\n>>  #include <libcamera/controls.h>\n>> +#include <libcamera/property_ids.h>\n>>  #include <libcamera/request.h>\n>>  #include <libcamera/stream.h>\n>>  \n>> @@ -500,6 +501,9 @@ int UVCCameraData::init(MediaEntity *entity)\n>>  \n>>  \tvideo_->bufferReady.connect(this, &UVCCameraData::bufferReady);\n>>  \n>> +\t/* Initialise Camera Property. Treat all UVC cameras as external. */\n>> +\tproperties_.set(properties::Location, properties::CameraLocationExternal);\n>> +\n>>  \t/* Initialise the supported controls. */\n>>  \tControlInfoMap::Map ctrls;\n>>  \n>> -- \n>> 2.26.2\n>>\n>> _______________________________________________\n>> libcamera-devel mailing list\n>> libcamera-devel@lists.libcamera.org\n>> https://lists.libcamera.org/listinfo/libcamera-devel\n>","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 2B109BD87D\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 13 Aug 2020 19:11:24 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 96A3D613D6;\n\tThu, 13 Aug 2020 21:11:23 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 825866055A\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 13 Aug 2020 21:11:22 +0200 (CEST)","from [192.168.0.20]\n\t(cpc89244-aztw30-2-0-cust3082.18-1.cable.virginm.net [86.31.172.11])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 806DCB8F;\n\tThu, 13 Aug 2020 21:11:21 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"P8ozgCQg\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1597345882;\n\tbh=F8Xnz6Et2KVRa36bQfzGyzBeNXj9HBmK9jMLoB4nSWE=;\n\th=Reply-To:Subject:To:Cc:References:From:Date:In-Reply-To:From;\n\tb=P8ozgCQgWOyW+pOVK+ZvkWK7M5pepA3kiKCYClFaAUEUEw+gc6ijG8yeHiFe7jxBW\n\tgretUbdwwl/8wUYLpme6O2mD/BGSvll5ST0FdstMDB9yBryGVdevKtMbS8zzaj3gG1\n\tt3XmQ6S8qEF3uVNDbeFSb9URklf+dD9MpITnpvZ0=","To":"=?utf-8?q?Niklas_S=C3=B6derlund?= <niklas.soderlund@ragnatech.se>,\n\tUmang Jain <email@uajain.com>","References":"<20200810120406.52654-1-email@uajain.com>\n\t<20200810120406.52654-2-email@uajain.com>\n\t<20200813103114.GD1061689@oden.dyn.berto.se>","From":"Kieran Bingham <kieran.bingham@ideasonboard.com>","Autocrypt":"addr=kieran.bingham@ideasonboard.com; keydata=\n\t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\n\tWZw01QYHU/GUV/zHJSFk","Organization":"Ideas on Board","Message-ID":"<9c968df7-13ed-813a-cc3e-8d59beba99d1@ideasonboard.com>","Date":"Thu, 13 Aug 2020 20:11:18 +0100","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101\n\tThunderbird/68.10.0","MIME-Version":"1.0","In-Reply-To":"<20200813103114.GD1061689@oden.dyn.berto.se>","Content-Language":"en-GB","Subject":"Re: [libcamera-devel] [PATCH v2 1/4] libcamera: pipeline: uvcvideo:\n\tTreat all UVC cameras as external","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Reply-To":"kieran.bingham@ideasonboard.com","Cc":"libcamera-devel@lists.libcamera.org","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"base64","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":12001,"web_url":"https://patchwork.libcamera.org/comment/12001/","msgid":"<20200813191309.GL6057@pendragon.ideasonboard.com>","date":"2020-08-13T19:13:09","subject":"Re: [libcamera-devel] [PATCH v2 1/4] libcamera: pipeline: uvcvideo:\n\tTreat all UVC cameras as external","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Kieran,\n\nOn Thu, Aug 13, 2020 at 08:11:18PM +0100, Kieran Bingham wrote:\n> On 13/08/2020 11:31, Niklas Söderlund wrote:\n> > On 2020-08-10 12:04:11 +0000, Umang Jain wrote:\n> >> Treat all UVC cameras as external for android framework to know that\n> >> they are external.\n> > \n> > nit: I would rewrite this to describe that as we currently have no way \n> > to determine the location if a UVC camera mark it External to have a \n> > starting point for the property.\n> > \n> > With or without this fixed but with the comments by Kieran and Laurent \n> > fixed,\n> > \n> > Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>\n> \n> So, having seen the conflict this might cause with camera naming, I\n> wonder if we should introduce a new property called \"hotpluggable\" or\n> \"removable\" or such in a separate patch, and then set that property here.\n\nI'm not sure to follow you, what's the conflict ?\n\n> I'm not entirely sure yet, because I fear android expects the difference\n> to be 'internal/external' rather than 'hotpluggable/not-hotpluggable'.\n\nAndroid expects all internal cameras to not be hotpluggable, and all\nexternal cameras to be hotpluggable.\n\n> What do you think ?\n> \n> >> Signed-off-by: Umang Jain <email@uajain.com>\n> >> ---\n> >>  src/libcamera/pipeline/uvcvideo/uvcvideo.cpp | 4 ++++\n> >>  1 file changed, 4 insertions(+)\n> >>\n> >> diff --git a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp\n> >> index bc892ec..ed61d12 100644\n> >> --- a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp\n> >> +++ b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp\n> >> @@ -14,6 +14,7 @@\n> >>  #include <libcamera/camera.h>\n> >>  #include <libcamera/control_ids.h>\n> >>  #include <libcamera/controls.h>\n> >> +#include <libcamera/property_ids.h>\n> >>  #include <libcamera/request.h>\n> >>  #include <libcamera/stream.h>\n> >>  \n> >> @@ -500,6 +501,9 @@ int UVCCameraData::init(MediaEntity *entity)\n> >>  \n> >>  \tvideo_->bufferReady.connect(this, &UVCCameraData::bufferReady);\n> >>  \n> >> +\t/* Initialise Camera Property. Treat all UVC cameras as external. */\n> >> +\tproperties_.set(properties::Location, properties::CameraLocationExternal);\n> >> +\n> >>  \t/* Initialise the supported controls. */\n> >>  \tControlInfoMap::Map ctrls;\n> >>","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 9FB8FBD87C\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 13 Aug 2020 19:13:27 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 2DFBD613D6;\n\tThu, 13 Aug 2020 21:13:27 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id D58366055A\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 13 Aug 2020 21:13:24 +0200 (CEST)","from pendragon.ideasonboard.com (62-78-145-57.bb.dnainternet.fi\n\t[62.78.145.57])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 3EA93B8F;\n\tThu, 13 Aug 2020 21:13:24 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"F0Q2lrXm\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1597346004;\n\tbh=i1kImfsBJ65Mq3Ep8R0qnr5OqnqrNt8LDSj5nM1FE7A=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=F0Q2lrXmq/YpHofPOl80M6CxNRMsnWOqdR8dHS6bi3dpkPUQBbOnDZW5Hx4BQDMM/\n\tuGU0eUDhF2zuvYPn7N3WqmFR3wWgARZUo2RwAFv5oDJr1aEGk20ZMaEqi5xdusCqYu\n\tjwRNeO21IZtUrdaBKsP0UKzNDXZ/fRKTVapuPAvw=","Date":"Thu, 13 Aug 2020 22:13:09 +0300","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"Kieran Bingham <kieran.bingham@ideasonboard.com>","Message-ID":"<20200813191309.GL6057@pendragon.ideasonboard.com>","References":"<20200810120406.52654-1-email@uajain.com>\n\t<20200810120406.52654-2-email@uajain.com>\n\t<20200813103114.GD1061689@oden.dyn.berto.se>\n\t<9c968df7-13ed-813a-cc3e-8d59beba99d1@ideasonboard.com>","MIME-Version":"1.0","Content-Disposition":"inline","In-Reply-To":"<9c968df7-13ed-813a-cc3e-8d59beba99d1@ideasonboard.com>","Subject":"Re: [libcamera-devel] [PATCH v2 1/4] libcamera: pipeline: uvcvideo:\n\tTreat all UVC cameras as external","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Cc":"libcamera-devel@lists.libcamera.org","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"base64","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":12002,"web_url":"https://patchwork.libcamera.org/comment/12002/","msgid":"<7ce4aa80-c1bf-7d85-5a02-370d36dfd16e@ideasonboard.com>","date":"2020-08-13T19:19:13","subject":"Re: [libcamera-devel] [PATCH v2 1/4] libcamera: pipeline: uvcvideo:\n\tTreat all UVC cameras as external","submitter":{"id":4,"url":"https://patchwork.libcamera.org/api/people/4/","name":"Kieran Bingham","email":"kieran.bingham@ideasonboard.com"},"content":"On 13/08/2020 20:13, Laurent Pinchart wrote:\n> Hi Kieran,\n> \n> On Thu, Aug 13, 2020 at 08:11:18PM +0100, Kieran Bingham wrote:\n>> On 13/08/2020 11:31, Niklas Söderlund wrote:\n>>> On 2020-08-10 12:04:11 +0000, Umang Jain wrote:\n>>>> Treat all UVC cameras as external for android framework to know that\n>>>> they are external.\n>>>\n>>> nit: I would rewrite this to describe that as we currently have no way \n>>> to determine the location if a UVC camera mark it External to have a \n>>> starting point for the property.\n>>>\n>>> With or without this fixed but with the comments by Kieran and Laurent \n>>> fixed,\n>>>\n>>> Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>\n>>\n>> So, having seen the conflict this might cause with camera naming, I\n>> wonder if we should introduce a new property called \"hotpluggable\" or\n>> \"removable\" or such in a separate patch, and then set that property here.\n> \n> I'm not sure to follow you, what's the conflict ?\n> \n>> I'm not entirely sure yet, because I fear android expects the difference\n>> to be 'internal/external' rather than 'hotpluggable/not-hotpluggable'.\n> \n> Android expects all internal cameras to not be hotpluggable, and all\n> external cameras to be hotpluggable.\n\nYou're right, it's not a 'conflict' as such, just very ambiguous naming\nin cam: - this is the output I get with this change, and Niklas' naming\nseries:\n\n./build/src/cam/cam -l\n\nAvailable cameras:\n1: External camera (\\_SB_.PCI0.XHC_.RHUB.HS01-1:1.0-041e:406c)\n2: External camera (\\_SB_.PCI0.XHC_.RHUB.HS05-5:1.0-0408:5251)\n3: External camera (\\_SB_.PCI0.XHC_.RHUB.HS05-5:1.2-0408:5251)\n\nHowever this is just the output rendered by cam, which is application\nside, so I'm conflating the issue.\n\nPerhaps it really means I think cam should also always display the model\nwhen available ;-)\n\n--\nKieran\n\n\n> \n>> What do you think ?\n>>\n>>>> Signed-off-by: Umang Jain <email@uajain.com>\n>>>> ---\n>>>>  src/libcamera/pipeline/uvcvideo/uvcvideo.cpp | 4 ++++\n>>>>  1 file changed, 4 insertions(+)\n>>>>\n>>>> diff --git a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp\n>>>> index bc892ec..ed61d12 100644\n>>>> --- a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp\n>>>> +++ b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp\n>>>> @@ -14,6 +14,7 @@\n>>>>  #include <libcamera/camera.h>\n>>>>  #include <libcamera/control_ids.h>\n>>>>  #include <libcamera/controls.h>\n>>>> +#include <libcamera/property_ids.h>\n>>>>  #include <libcamera/request.h>\n>>>>  #include <libcamera/stream.h>\n>>>>  \n>>>> @@ -500,6 +501,9 @@ int UVCCameraData::init(MediaEntity *entity)\n>>>>  \n>>>>  \tvideo_->bufferReady.connect(this, &UVCCameraData::bufferReady);\n>>>>  \n>>>> +\t/* Initialise Camera Property. Treat all UVC cameras as external. */\n>>>> +\tproperties_.set(properties::Location, properties::CameraLocationExternal);\n>>>> +\n>>>>  \t/* Initialise the supported controls. */\n>>>>  \tControlInfoMap::Map ctrls;\n>>>>  \n>","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 6C395BD87D\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 13 Aug 2020 19:19:20 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id E6B81615F4;\n\tThu, 13 Aug 2020 21:19:19 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 8928A6055A\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 13 Aug 2020 21:19:18 +0200 (CEST)","from [192.168.0.20]\n\t(cpc89244-aztw30-2-0-cust3082.18-1.cable.virginm.net [86.31.172.11])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id CCF5FB8F;\n\tThu, 13 Aug 2020 21:19:16 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"ryvWsNFz\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1597346357;\n\tbh=A/Bjz5XqWZcqKKJodHK4mP60bQ9RskHtKfB1OkTZduM=;\n\th=Reply-To:Subject:To:Cc:References:From:Date:In-Reply-To:From;\n\tb=ryvWsNFzF3S+Ek17ad71GERY3PZRl62qAEo881y7jKNJjC8TKync0fSwlvhi6t6RE\n\tVVJuGGo1JzRkA9sVVXMKa9HmMnGQ/aXb1s4mRPjS4RESHnEbafa7tcNs8OI1MgaZd/\n\tpKTMeMnIJYzoPCQIWjns94v6BqK5suz2zHjGiDKA=","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","References":"<20200810120406.52654-1-email@uajain.com>\n\t<20200810120406.52654-2-email@uajain.com>\n\t<20200813103114.GD1061689@oden.dyn.berto.se>\n\t<9c968df7-13ed-813a-cc3e-8d59beba99d1@ideasonboard.com>\n\t<20200813191309.GL6057@pendragon.ideasonboard.com>","From":"Kieran Bingham <kieran.bingham@ideasonboard.com>","Autocrypt":"addr=kieran.bingham@ideasonboard.com; keydata=\n\t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\n\tWZw01QYHU/GUV/zHJSFk","Organization":"Ideas on Board","Message-ID":"<7ce4aa80-c1bf-7d85-5a02-370d36dfd16e@ideasonboard.com>","Date":"Thu, 13 Aug 2020 20:19:13 +0100","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101\n\tThunderbird/68.10.0","MIME-Version":"1.0","In-Reply-To":"<20200813191309.GL6057@pendragon.ideasonboard.com>","Content-Language":"en-GB","Subject":"Re: [libcamera-devel] [PATCH v2 1/4] libcamera: pipeline: uvcvideo:\n\tTreat all UVC cameras as external","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Reply-To":"kieran.bingham@ideasonboard.com","Cc":"libcamera-devel@lists.libcamera.org","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"base64","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":12003,"web_url":"https://patchwork.libcamera.org/comment/12003/","msgid":"<20200813195644.GA1948019@oden.dyn.berto.se>","date":"2020-08-13T19:56:44","subject":"Re: [libcamera-devel] [PATCH v2 1/4] libcamera: pipeline: uvcvideo:\n\tTreat all UVC cameras as external","submitter":{"id":5,"url":"https://patchwork.libcamera.org/api/people/5/","name":"Niklas Söderlund","email":"niklas.soderlund@ragnatech.se"},"content":"Hi Kieran,\n\nOn 2020-08-13 20:19:13 +0100, Kieran Bingham wrote:\n> \n> \n> On 13/08/2020 20:13, Laurent Pinchart wrote:\n> > Hi Kieran,\n> > \n> > On Thu, Aug 13, 2020 at 08:11:18PM +0100, Kieran Bingham wrote:\n> >> On 13/08/2020 11:31, Niklas Söderlund wrote:\n> >>> On 2020-08-10 12:04:11 +0000, Umang Jain wrote:\n> >>>> Treat all UVC cameras as external for android framework to know that\n> >>>> they are external.\n> >>>\n> >>> nit: I would rewrite this to describe that as we currently have no way \n> >>> to determine the location if a UVC camera mark it External to have a \n> >>> starting point for the property.\n> >>>\n> >>> With or without this fixed but with the comments by Kieran and Laurent \n> >>> fixed,\n> >>>\n> >>> Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>\n> >>\n> >> So, having seen the conflict this might cause with camera naming, I\n> >> wonder if we should introduce a new property called \"hotpluggable\" or\n> >> \"removable\" or such in a separate patch, and then set that property here.\n> > \n> > I'm not sure to follow you, what's the conflict ?\n> > \n> >> I'm not entirely sure yet, because I fear android expects the difference\n> >> to be 'internal/external' rather than 'hotpluggable/not-hotpluggable'.\n> > \n> > Android expects all internal cameras to not be hotpluggable, and all\n> > external cameras to be hotpluggable.\n> \n> You're right, it's not a 'conflict' as such, just very ambiguous naming\n> in cam: - this is the output I get with this change, and Niklas' naming\n> series:\n> \n> ./build/src/cam/cam -l\n> \n> Available cameras:\n> 1: External camera (\\_SB_.PCI0.XHC_.RHUB.HS01-1:1.0-041e:406c)\n> 2: External camera (\\_SB_.PCI0.XHC_.RHUB.HS05-5:1.0-0408:5251)\n> 3: External camera (\\_SB_.PCI0.XHC_.RHUB.HS05-5:1.2-0408:5251)\n> \n> However this is just the output rendered by cam, which is application\n> side, so I'm conflating the issue.\n> \n> Perhaps it really means I think cam should also always display the model\n> when available ;-)\n\nI agree with you, camera names printed with both these series are \nunsuitable for UVC cameras that are hot-pluggable. I think the name for \nUVC cameras that are hot-pluggable should be the model name.\n\nAs the exact requirements for how the HAL should select if a camera is \nhot-pluggable are still under debate I think we should merge the series \nas soon as they become ready. The fix for the name generation rule \nchange introduce in this series is small and easy to squash in or fix \non-top, depending on the order the series are ready.\n\n> \n> --\n> Kieran\n> \n> \n> > \n> >> What do you think ?\n> >>\n> >>>> Signed-off-by: Umang Jain <email@uajain.com>\n> >>>> ---\n> >>>>  src/libcamera/pipeline/uvcvideo/uvcvideo.cpp | 4 ++++\n> >>>>  1 file changed, 4 insertions(+)\n> >>>>\n> >>>> diff --git a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp\n> >>>> index bc892ec..ed61d12 100644\n> >>>> --- a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp\n> >>>> +++ b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp\n> >>>> @@ -14,6 +14,7 @@\n> >>>>  #include <libcamera/camera.h>\n> >>>>  #include <libcamera/control_ids.h>\n> >>>>  #include <libcamera/controls.h>\n> >>>> +#include <libcamera/property_ids.h>\n> >>>>  #include <libcamera/request.h>\n> >>>>  #include <libcamera/stream.h>\n> >>>>  \n> >>>> @@ -500,6 +501,9 @@ int UVCCameraData::init(MediaEntity *entity)\n> >>>>  \n> >>>>  \tvideo_->bufferReady.connect(this, &UVCCameraData::bufferReady);\n> >>>>  \n> >>>> +\t/* Initialise Camera Property. Treat all UVC cameras as external. */\n> >>>> +\tproperties_.set(properties::Location, properties::CameraLocationExternal);\n> >>>> +\n> >>>>  \t/* Initialise the supported controls. */\n> >>>>  \tControlInfoMap::Map ctrls;\n> >>>>  \n> > \n> \n> -- \n> Regards\n> --\n> Kieran","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id C1502BD87C\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 13 Aug 2020 19:56:49 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 485B9613B4;\n\tThu, 13 Aug 2020 21:56:49 +0200 (CEST)","from mail-lj1-x243.google.com (mail-lj1-x243.google.com\n\t[IPv6:2a00:1450:4864:20::243])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 8BCC66055A\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 13 Aug 2020 21:56:47 +0200 (CEST)","by mail-lj1-x243.google.com with SMTP id v4so7573084ljd.0\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 13 Aug 2020 12:56:47 -0700 (PDT)","from localhost (h-209-203.A463.priv.bahnhof.se. [155.4.209.203])\n\tby smtp.gmail.com with ESMTPSA id\n\tg6sm1385947lfr.51.2020.08.13.12.56.44\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tThu, 13 Aug 2020 12:56:45 -0700 (PDT)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=ragnatech-se.20150623.gappssmtp.com\n\theader.i=@ragnatech-se.20150623.gappssmtp.com\n\theader.b=\"EnqJZRQV\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=ragnatech-se.20150623.gappssmtp.com; s=20150623;\n\th=date:from:to:cc:subject:message-id:references:mime-version\n\t:content-disposition:content-transfer-encoding:in-reply-to;\n\tbh=cgADhrxlPm0DoVgQa969su688W1E7zDLKU0zg2HcfHw=;\n\tb=EnqJZRQVhn36maE2e9tVGnXoOtS5n7t6oBFaIqEs5pdQYs898LW2+ludPl4y1bW584\n\tvWlDE7TQfeJ5vN52iwbi7PHvw4DMJSjc8Z2bJcpudebAxswOoTgfD3m9MPspU86Cxbpw\n\t9y9GZChNr7digCt68nt9STXXT+IRpHnVLYFv/qFxkkcW5ZyguKJTLIz5dF8BEdV7jOKU\n\t8UfB1/FTPVlWAwpkGfnho/swFW6a+tH29MXw7wYsYvZ3Bza1tf8vCT4ywicpDZbryutu\n\tJahtmW1b7qPe1J7yxI25aoNbzlC/+r/7mzFtMXbYHdR3jUR7DGxSKauSYPxGpJZ7ILWQ\n\todzA==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:date:from:to:cc:subject:message-id:references\n\t:mime-version:content-disposition:content-transfer-encoding\n\t:in-reply-to;\n\tbh=cgADhrxlPm0DoVgQa969su688W1E7zDLKU0zg2HcfHw=;\n\tb=L1z957m8dj+y6nYGsq9vDwBdp45mNB46oea8fCvxM7waX87kVLUT45Ar83hYDf/udW\n\tB9FfAX2Fm0II7dgv9rtYbph7otAsqaftE6mWmwC7TrVd+vYtQbhFavCXTL2iySd80Krp\n\tbNn7agaPtfzjAxwgIWDQ6F9rx/UHDhTZdfzifnzsakARfzHR+K+jyM5AKTpI4k+fzJUI\n\to186ks5KOXQfl63F2qoXhYQLQO80knqfP9nNvpq409LlKfKlyc9pR1azSL1lkdRMczSe\n\t9YscQ7DRgyzmAPPQ/wYA4MD/QjtpySzeVb7Au87ouJV9D08qLsNyZyp3P4VV1ptD9pKz\n\tDx3A==","X-Gm-Message-State":"AOAM532SfURyA8q5pX57U7xiMc2j4/AwwVd6F56Xs0jxHDRxwIJYFGSZ\n\ts3kOXGuIsTonalI2OZ8Xo5jPcQb2pEI=","X-Google-Smtp-Source":"ABdhPJycKGJzCp0wiTrp67g++wX1H7ByKBkimMWnPWfN4Tj6iseoaPb90QoQ3Yp0N2vxh5xGOPD41g==","X-Received":"by 2002:a2e:5d8:: with SMTP id 207mr2539702ljf.58.1597348606479; \n\tThu, 13 Aug 2020 12:56:46 -0700 (PDT)","Date":"Thu, 13 Aug 2020 21:56:44 +0200","From":"Niklas =?iso-8859-1?q?S=F6derlund?= <niklas.soderlund@ragnatech.se>","To":"Kieran Bingham <kieran.bingham@ideasonboard.com>","Message-ID":"<20200813195644.GA1948019@oden.dyn.berto.se>","References":"<20200810120406.52654-1-email@uajain.com>\n\t<20200810120406.52654-2-email@uajain.com>\n\t<20200813103114.GD1061689@oden.dyn.berto.se>\n\t<9c968df7-13ed-813a-cc3e-8d59beba99d1@ideasonboard.com>\n\t<20200813191309.GL6057@pendragon.ideasonboard.com>\n\t<7ce4aa80-c1bf-7d85-5a02-370d36dfd16e@ideasonboard.com>","MIME-Version":"1.0","Content-Disposition":"inline","In-Reply-To":"<7ce4aa80-c1bf-7d85-5a02-370d36dfd16e@ideasonboard.com>","Subject":"Re: [libcamera-devel] [PATCH v2 1/4] libcamera: pipeline: uvcvideo:\n\tTreat all UVC cameras as external","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Cc":"libcamera-devel@lists.libcamera.org","Content-Type":"text/plain; charset=\"iso-8859-1\"","Content-Transfer-Encoding":"quoted-printable","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":12004,"web_url":"https://patchwork.libcamera.org/comment/12004/","msgid":"<79db6a0f-30a1-221a-910e-e7e1ab77905a@ideasonboard.com>","date":"2020-08-13T20:02:07","subject":"Re: [libcamera-devel] [PATCH v2 1/4] libcamera: pipeline: uvcvideo:\n\tTreat all UVC cameras as external","submitter":{"id":4,"url":"https://patchwork.libcamera.org/api/people/4/","name":"Kieran Bingham","email":"kieran.bingham@ideasonboard.com"},"content":"Hi Niklas,\n\nOn 13/08/2020 20:56, Niklas Söderlund wrote:\n> Hi Kieran,\n> \n> On 2020-08-13 20:19:13 +0100, Kieran Bingham wrote:\n>>\n>>\n>> On 13/08/2020 20:13, Laurent Pinchart wrote:\n>>> Hi Kieran,\n>>>\n>>> On Thu, Aug 13, 2020 at 08:11:18PM +0100, Kieran Bingham wrote:\n>>>> On 13/08/2020 11:31, Niklas Söderlund wrote:\n>>>>> On 2020-08-10 12:04:11 +0000, Umang Jain wrote:\n>>>>>> Treat all UVC cameras as external for android framework to know that\n>>>>>> they are external.\n>>>>>\n>>>>> nit: I would rewrite this to describe that as we currently have no way \n>>>>> to determine the location if a UVC camera mark it External to have a \n>>>>> starting point for the property.\n>>>>>\n>>>>> With or without this fixed but with the comments by Kieran and Laurent \n>>>>> fixed,\n>>>>>\n>>>>> Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>\n>>>>\n>>>> So, having seen the conflict this might cause with camera naming, I\n>>>> wonder if we should introduce a new property called \"hotpluggable\" or\n>>>> \"removable\" or such in a separate patch, and then set that property here.\n>>>\n>>> I'm not sure to follow you, what's the conflict ?\n>>>\n>>>> I'm not entirely sure yet, because I fear android expects the difference\n>>>> to be 'internal/external' rather than 'hotpluggable/not-hotpluggable'.\n>>>\n>>> Android expects all internal cameras to not be hotpluggable, and all\n>>> external cameras to be hotpluggable.\n>>\n>> You're right, it's not a 'conflict' as such, just very ambiguous naming\n>> in cam: - this is the output I get with this change, and Niklas' naming\n>> series:\n>>\n>> ./build/src/cam/cam -l\n>>\n>> Available cameras:\n>> 1: External camera (\\_SB_.PCI0.XHC_.RHUB.HS01-1:1.0-041e:406c)\n>> 2: External camera (\\_SB_.PCI0.XHC_.RHUB.HS05-5:1.0-0408:5251)\n>> 3: External camera (\\_SB_.PCI0.XHC_.RHUB.HS05-5:1.2-0408:5251)\n>>\n>> However this is just the output rendered by cam, which is application\n>> side, so I'm conflating the issue.\n>>\n>> Perhaps it really means I think cam should also always display the model\n>> when available ;-)\n> \n> I agree with you, camera names printed with both these series are \n> unsuitable for UVC cameras that are hot-pluggable. I think the name for \n> UVC cameras that are hot-pluggable should be the model name.\n> \n> As the exact requirements for how the HAL should select if a camera is \n> hot-pluggable are still under debate I think we should merge the series \n> as soon as they become ready. The fix for the name generation rule \n> change introduce in this series is small and easy to squash in or fix \n> on-top, depending on the order the series are ready.\n\nIndeed, I think the camera name improvement series is good to go\npersonally, and is an improvement on what we have right now.\n\nWe can reconvene when we work out how this series goes in, or if you\nwant to predict it and display the model for external camera's that's\nfine for me too.\n\nI think that's a good distinction though. For an internal camera, the\nlocation is more important than the model which is not obvious, or clear\nto the user.\n\nFor external cameras, that's different because the location is less\nmeaningful, and the model is more meaningful (and visible).\n\n\n>> --\n>> Kieran\n>>\n>>\n>>>\n>>>> What do you think ?\n>>>>\n>>>>>> Signed-off-by: Umang Jain <email@uajain.com>\n>>>>>> ---\n>>>>>>  src/libcamera/pipeline/uvcvideo/uvcvideo.cpp | 4 ++++\n>>>>>>  1 file changed, 4 insertions(+)\n>>>>>>\n>>>>>> diff --git a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp\n>>>>>> index bc892ec..ed61d12 100644\n>>>>>> --- a/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp\n>>>>>> +++ b/src/libcamera/pipeline/uvcvideo/uvcvideo.cpp\n>>>>>> @@ -14,6 +14,7 @@\n>>>>>>  #include <libcamera/camera.h>\n>>>>>>  #include <libcamera/control_ids.h>\n>>>>>>  #include <libcamera/controls.h>\n>>>>>> +#include <libcamera/property_ids.h>\n>>>>>>  #include <libcamera/request.h>\n>>>>>>  #include <libcamera/stream.h>\n>>>>>>  \n>>>>>> @@ -500,6 +501,9 @@ int UVCCameraData::init(MediaEntity *entity)\n>>>>>>  \n>>>>>>  \tvideo_->bufferReady.connect(this, &UVCCameraData::bufferReady);\n>>>>>>  \n>>>>>> +\t/* Initialise Camera Property. Treat all UVC cameras as external. */\n>>>>>> +\tproperties_.set(properties::Location, properties::CameraLocationExternal);\n>>>>>> +\n>>>>>>  \t/* Initialise the supported controls. */\n>>>>>>  \tControlInfoMap::Map ctrls;\n>>>>>>  \n>>>\n>>\n>> -- \n>> Regards\n>> --\n>> Kieran\n>","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 7CD3ABD87D\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 13 Aug 2020 20:02:12 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 0B275613D6;\n\tThu, 13 Aug 2020 22:02:12 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 613426055A\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 13 Aug 2020 22:02:11 +0200 (CEST)","from [192.168.0.20]\n\t(cpc89244-aztw30-2-0-cust3082.18-1.cable.virginm.net [86.31.172.11])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 97835B8F;\n\tThu, 13 Aug 2020 22:02:10 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"MhXDn7xC\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1597348930;\n\tbh=MMiG/6br1W+UQsOZqSWqNDO078KCYDtVwY1+BYuGOg8=;\n\th=Reply-To:Subject:To:Cc:References:From:Date:In-Reply-To:From;\n\tb=MhXDn7xC+qaYwtGmjRjnV3lVLn8q+R8cXo8x0s49XX6bE52Klx27/KkfAd0FzL0XO\n\tFpFY9D2WcAZt27eXJzTjc+ycNGM92hqWlNcSYtK8af/plkosU3ByfFm3om5aEu9xkf\n\t9JaybVsHYEybvYTLpsW5tpMvuLC17CrRfpvlDYwg=","To":"=?utf-8?q?Niklas_S=C3=B6derlund?= <niklas.soderlund@ragnatech.se>","References":"<20200810120406.52654-1-email@uajain.com>\n\t<20200810120406.52654-2-email@uajain.com>\n\t<20200813103114.GD1061689@oden.dyn.berto.se>\n\t<9c968df7-13ed-813a-cc3e-8d59beba99d1@ideasonboard.com>\n\t<20200813191309.GL6057@pendragon.ideasonboard.com>\n\t<7ce4aa80-c1bf-7d85-5a02-370d36dfd16e@ideasonboard.com>\n\t<20200813195644.GA1948019@oden.dyn.berto.se>","From":"Kieran Bingham <kieran.bingham@ideasonboard.com>","Autocrypt":"addr=kieran.bingham@ideasonboard.com; keydata=\n\t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\n\tWZw01QYHU/GUV/zHJSFk","Organization":"Ideas on Board","Message-ID":"<79db6a0f-30a1-221a-910e-e7e1ab77905a@ideasonboard.com>","Date":"Thu, 13 Aug 2020 21:02:07 +0100","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101\n\tThunderbird/68.10.0","MIME-Version":"1.0","In-Reply-To":"<20200813195644.GA1948019@oden.dyn.berto.se>","Content-Language":"en-GB","Subject":"Re: [libcamera-devel] [PATCH v2 1/4] libcamera: pipeline: uvcvideo:\n\tTreat all UVC cameras as external","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Reply-To":"kieran.bingham@ideasonboard.com","Cc":"libcamera-devel@lists.libcamera.org","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"base64","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}}]