[{"id":16177,"web_url":"https://patchwork.libcamera.org/comment/16177/","msgid":"<CAO5uPHNXcqjm3b=OtRmcicbHkAn=jV986zAST2JurrCaOdSUAw@mail.gmail.com>","date":"2021-04-12T13:08:07","subject":"Re: [libcamera-devel] [PATCH v4 2/3] libcamera: camera_sensor:\n\tRegister static properties","submitter":{"id":63,"url":"https://patchwork.libcamera.org/api/people/63/","name":"Hirokazu Honda","email":"hiroh@chromium.org"},"content":"Hi Jacopo, thanks for the patch.\n\nOn Mon, Apr 12, 2021 at 4:56 PM Jacopo Mondi <jacopo@jmondi.org> wrote:\n>\n> Register static properties, retrieved inspecting the sensor\n> database, in the CameraSensor class.\n>\n> Static properties are overridden by properties retrieved from\n> the kernel interface at run-time if any overlap between the two\n> sets occurs.\n>\n> Reviewed-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>\n> Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>\n> ---\n>  include/libcamera/internal/camera_sensor.h |  1 +\n>  src/libcamera/camera_sensor.cpp            | 24 +++++++++++++++++++++-\n>  2 files changed, 24 insertions(+), 1 deletion(-)\n>\n> diff --git a/include/libcamera/internal/camera_sensor.h b/include/libcamera/internal/camera_sensor.h\n> index 3e98f71b5e7f..3fa3a419f94a 100644\n> --- a/include/libcamera/internal/camera_sensor.h\n> +++ b/include/libcamera/internal/camera_sensor.h\n> @@ -77,6 +77,7 @@ private:\n>         int generateId();\n>         int validateSensorDriver();\n>         void initVimcDefaultProperties();\n> +       void initStaticProperties();\n>         int initProperties();\n>\n>         const MediaEntity *entity_;\n> diff --git a/src/libcamera/camera_sensor.cpp b/src/libcamera/camera_sensor.cpp\n> index f7ed91d990f7..c012385ff056 100644\n> --- a/src/libcamera/camera_sensor.cpp\n> +++ b/src/libcamera/camera_sensor.cpp\n> @@ -20,6 +20,7 @@\n>\n>  #include \"libcamera/internal/bayer_format.h\"\n>  #include \"libcamera/internal/formats.h\"\n> +#include \"libcamera/internal/sensor_database.h\"\n>  #include \"libcamera/internal/sysfs.h\"\n>  #include \"libcamera/internal/utils.h\"\n>\n> @@ -266,6 +267,9 @@ int CameraSensor::init()\n>         if (ret)\n>                 return ret;\n>\n> +       /* Initialize the static properties from the sensor database. */\n> +       initStaticProperties();\n> +\n>         ret = initProperties();\n>         if (ret)\n>                 return ret;\n> @@ -407,6 +411,21 @@ void CameraSensor::initVimcDefaultProperties()\n>         activeArea_ = Rectangle(pixelArraySize_);\n>  }\n>\n> +void CameraSensor::initStaticProperties()\n> +{\n> +       const SensorInfo *info = SensorDatabase::get(model_);\n> +       if (!info) {\n> +               LOG(CameraSensor, Warning)\n> +                       << \"No static properties available for '\" << model_ << \"'\";\n> +               LOG(CameraSensor, Warning)\n> +                       << \"Please consider updating the sensor database\";\n> +               return;\n> +       }\n> +\n> +       /* Register the properties retrieved from the sensor database. */\n> +       properties_.set(properties::UnitCellSize, info->unitCellSize);\n> +}\n> +\n>  int CameraSensor::initProperties()\n>  {\n>         /*\n> @@ -444,7 +463,10 @@ int CameraSensor::initProperties()\n>         if (ret)\n>                 return ret;\n>\n> -       /* Retrieve and store the camera sensor properties. */\n> +       /* Initialize the static properties from the sensor database. */\n> +       initStaticProperties();\n> +\n> +       /* Retrieve and register properties from the kernel interface. */\n>         const ControlInfoMap &controls = subdev_->controls();\n>         int32_t propertyValue;\n>\n> --\n\nReviewed-by: Hirokazu Honda <hiroh@chromium.org>\n\n-Hiro\n\n> 2.31.1\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 36F9FBD1F6\n\tfor <parsemail@patchwork.libcamera.org>;\n\tMon, 12 Apr 2021 13:08:22 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id E8117687F3;\n\tMon, 12 Apr 2021 15:08:21 +0200 (CEST)","from mail-ej1-x62f.google.com (mail-ej1-x62f.google.com\n\t[IPv6:2a00:1450:4864:20::62f])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 257B7602C8\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 12 Apr 2021 15:08:20 +0200 (CEST)","by mail-ej1-x62f.google.com with SMTP id l4so20111220ejc.10\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 12 Apr 2021 06:08:20 -0700 (PDT)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=chromium.org header.i=@chromium.org\n\theader.b=\"mhD46anz\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org;\n\ts=google; \n\th=mime-version:references:in-reply-to:from:date:message-id:subject:to\n\t:cc:content-transfer-encoding;\n\tbh=6QR1XQba3mW8gWK+1jnF6kOTLfUidxmjVMxKdh6EBLw=;\n\tb=mhD46anzbjgTpU7KFC0Fpdgc3qzqXrvqet+EljAkdf3nGbIacPWazxVT28Mz3aIDYX\n\tJ7nWSj88I9WnC5uob/XRmmaN4OnZp7I1h/ixfV8aMumH2hXx5D6jNsqj4TF9F8PHnMqs\n\tx4zKByes3gWTRSvb/+FtnpD9Xq2NS0GnNysqc=","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:mime-version:references:in-reply-to:from:date\n\t:message-id:subject:to:cc:content-transfer-encoding;\n\tbh=6QR1XQba3mW8gWK+1jnF6kOTLfUidxmjVMxKdh6EBLw=;\n\tb=q3EqT5zb/ToNa3of+kQ4S09WzuSYx00bgLFtpxuAp8PuJ442khf3VzlVzoHEgszrLq\n\tJxKQogH/viM91IgWVtaVG6bYBSQ/DLGNIYOluWSQbOAWTK/V6ADX8YtKy0p9q0iCio41\n\tltFtrKwnB3XxXio8qFCcxaiG5hx4+H9qT2WS10OJz4ybr2qIJUfLPTQYE8Cfyu0bSIN1\n\t2Fb/zDcztdCoWLpcfdvxKBBncfkIBygttkpPKAnLVWjcSB/GzqU5uZBJrB8JZHtIsohi\n\tI6b0WZmEcBKhALdnNxcK98DisqBcZ+Eg/ZFEy/0eWBJKvxndeOYTpECDSJVzUx/LcjmH\n\tL9qQ==","X-Gm-Message-State":"AOAM531qNdlMq+3b7h7zZkwuIRqh2z0DzS3GqMes/Fw67McCOz3Y+1vW\n\t/tnq4+2K0zzH5VPFhCDBjdqVuzj+sYtc724oXI5xvw==","X-Google-Smtp-Source":"ABdhPJwMXlhpCR0nRit9227EExfB+zRDGVyqcrf2TTz2rAyBIhWBXaHmx/P3WsqoyEHuYCUNkIKLXA36L0xiM4PlUUM=","X-Received":"by 2002:a17:906:80d1:: with SMTP id\n\ta17mr7811242ejx.55.1618232899762; \n\tMon, 12 Apr 2021 06:08:19 -0700 (PDT)","MIME-Version":"1.0","References":"<20210412075702.9955-1-jacopo@jmondi.org>\n\t<20210412075702.9955-3-jacopo@jmondi.org>","In-Reply-To":"<20210412075702.9955-3-jacopo@jmondi.org>","From":"Hirokazu Honda <hiroh@chromium.org>","Date":"Mon, 12 Apr 2021 22:08:07 +0900","Message-ID":"<CAO5uPHNXcqjm3b=OtRmcicbHkAn=jV986zAST2JurrCaOdSUAw@mail.gmail.com>","To":"Jacopo Mondi <jacopo@jmondi.org>","Subject":"Re: [libcamera-devel] [PATCH v4 2/3] libcamera: camera_sensor:\n\tRegister static properties","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":"=?utf-8?q?Niklas_S=C3=B6derlund?=\n\t<niklas.soderlund+renesas@ragnatech.se>, libcamera devel\n\t<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":16200,"web_url":"https://patchwork.libcamera.org/comment/16200/","msgid":"<YHT4J4MVeh9D58gO@pendragon.ideasonboard.com>","date":"2021-04-13T01:47:19","subject":"Re: [libcamera-devel] [PATCH v4 2/3] libcamera: camera_sensor:\n\tRegister static properties","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Jacopo,\n\nThank you for the patch.\n\nOn Mon, Apr 12, 2021 at 09:57:01AM +0200, Jacopo Mondi wrote:\n> Register static properties, retrieved inspecting the sensor\n> database, in the CameraSensor class.\n> \n> Static properties are overridden by properties retrieved from\n> the kernel interface at run-time if any overlap between the two\n> sets occurs.\n> \n> Reviewed-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>\n> Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>\n> ---\n>  include/libcamera/internal/camera_sensor.h |  1 +\n>  src/libcamera/camera_sensor.cpp            | 24 +++++++++++++++++++++-\n>  2 files changed, 24 insertions(+), 1 deletion(-)\n> \n> diff --git a/include/libcamera/internal/camera_sensor.h b/include/libcamera/internal/camera_sensor.h\n> index 3e98f71b5e7f..3fa3a419f94a 100644\n> --- a/include/libcamera/internal/camera_sensor.h\n> +++ b/include/libcamera/internal/camera_sensor.h\n> @@ -77,6 +77,7 @@ private:\n>  \tint generateId();\n>  \tint validateSensorDriver();\n>  \tvoid initVimcDefaultProperties();\n> +\tvoid initStaticProperties();\n>  \tint initProperties();\n>  \n>  \tconst MediaEntity *entity_;\n> diff --git a/src/libcamera/camera_sensor.cpp b/src/libcamera/camera_sensor.cpp\n> index f7ed91d990f7..c012385ff056 100644\n> --- a/src/libcamera/camera_sensor.cpp\n> +++ b/src/libcamera/camera_sensor.cpp\n> @@ -20,6 +20,7 @@\n>  \n>  #include \"libcamera/internal/bayer_format.h\"\n>  #include \"libcamera/internal/formats.h\"\n> +#include \"libcamera/internal/sensor_database.h\"\n>  #include \"libcamera/internal/sysfs.h\"\n>  #include \"libcamera/internal/utils.h\"\n>  \n> @@ -266,6 +267,9 @@ int CameraSensor::init()\n>  \tif (ret)\n>  \t\treturn ret;\n>  \n> +\t/* Initialize the static properties from the sensor database. */\n> +\tinitStaticProperties();\n> +\n>  \tret = initProperties();\n>  \tif (ret)\n>  \t\treturn ret;\n> @@ -407,6 +411,21 @@ void CameraSensor::initVimcDefaultProperties()\n>  \tactiveArea_ = Rectangle(pixelArraySize_);\n>  }\n>  \n> +void CameraSensor::initStaticProperties()\n> +{\n> +\tconst SensorInfo *info = SensorDatabase::get(model_);\n> +\tif (!info) {\n> +\t\tLOG(CameraSensor, Warning)\n> +\t\t\t<< \"No static properties available for '\" << model_ << \"'\";\n> +\t\tLOG(CameraSensor, Warning)\n> +\t\t\t<< \"Please consider updating the sensor database\";\n\nShould we move this to the get() function in patch 1/3 ? I'm not sure if\nwe'll get more users of the sensor database, but if we do, that will\navoid duplicating the error message.\n\n> +\t\treturn;\n> +\t}\n> +\n> +\t/* Register the properties retrieved from the sensor database. */\n> +\tproperties_.set(properties::UnitCellSize, info->unitCellSize);\n> +}\n> +\n>  int CameraSensor::initProperties()\n>  {\n>  \t/*\n> @@ -444,7 +463,10 @@ int CameraSensor::initProperties()\n>  \tif (ret)\n>  \t\treturn ret;\n>  \n> -\t/* Retrieve and store the camera sensor properties. */\n> +\t/* Initialize the static properties from the sensor database. */\n> +\tinitStaticProperties();\n\nIs there a need to call this function twice, here and in\nCameraSensor::init() ?\n\n> +\n> +\t/* Retrieve and register properties from the kernel interface. */\n>  \tconst ControlInfoMap &controls = subdev_->controls();\n>  \tint32_t propertyValue;\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 E25B4BD224\n\tfor <parsemail@patchwork.libcamera.org>;\n\tTue, 13 Apr 2021 01:48:11 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 74242687EC;\n\tTue, 13 Apr 2021 03:48:11 +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 063C9605AE\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue, 13 Apr 2021 03:48:10 +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 6FF276F2;\n\tTue, 13 Apr 2021 03:48:09 +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=\"ijRZOZOd\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1618278489;\n\tbh=USB6g+7o3ghj2j1/EvMV0p/HZCCeUCLxY3GvLNvxUqI=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=ijRZOZOd1Mc8Q/kB+2X9iwZFCi1LfptYz2dTbYTfq527mj8YTi6rg1Kx4oSEOca2L\n\tmL9/9EsdfiXIbtuk1WpQ1aOFU/49w+a+lQSCjBQgom6+OteB2caEdzsD7btnNRTlR0\n\tGfODxzg+HFerNNCwNs2ZnaOt5v0SjPE/4XRNY2/4=","Date":"Tue, 13 Apr 2021 04:47:19 +0300","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"Jacopo Mondi <jacopo@jmondi.org>","Message-ID":"<YHT4J4MVeh9D58gO@pendragon.ideasonboard.com>","References":"<20210412075702.9955-1-jacopo@jmondi.org>\n\t<20210412075702.9955-3-jacopo@jmondi.org>","MIME-Version":"1.0","Content-Disposition":"inline","In-Reply-To":"<20210412075702.9955-3-jacopo@jmondi.org>","Subject":"Re: [libcamera-devel] [PATCH v4 2/3] libcamera: camera_sensor:\n\tRegister static properties","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":"Niklas =?utf-8?q?S=C3=B6derlund?=\n\t<niklas.soderlund+renesas@ragnatech.se>,\n\tlibcamera-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":16229,"web_url":"https://patchwork.libcamera.org/comment/16229/","msgid":"<20210413094132.za6zziiwqknfzgk5@uno.localdomain>","date":"2021-04-13T09:41:32","subject":"Re: [libcamera-devel] [PATCH v4 2/3] libcamera: camera_sensor:\n\tRegister static properties","submitter":{"id":3,"url":"https://patchwork.libcamera.org/api/people/3/","name":"Jacopo Mondi","email":"jacopo@jmondi.org"},"content":"Hi Laurent,\n\nOn Tue, Apr 13, 2021 at 04:47:19AM +0300, Laurent Pinchart wrote:\n> Hi Jacopo,\n>\n> Thank you for the patch.\n>\n> On Mon, Apr 12, 2021 at 09:57:01AM +0200, Jacopo Mondi wrote:\n> > Register static properties, retrieved inspecting the sensor\n> > database, in the CameraSensor class.\n> >\n> > Static properties are overridden by properties retrieved from\n> > the kernel interface at run-time if any overlap between the two\n> > sets occurs.\n> >\n> > Reviewed-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>\n> > Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>\n> > ---\n> >  include/libcamera/internal/camera_sensor.h |  1 +\n> >  src/libcamera/camera_sensor.cpp            | 24 +++++++++++++++++++++-\n> >  2 files changed, 24 insertions(+), 1 deletion(-)\n> >\n> > diff --git a/include/libcamera/internal/camera_sensor.h b/include/libcamera/internal/camera_sensor.h\n> > index 3e98f71b5e7f..3fa3a419f94a 100644\n> > --- a/include/libcamera/internal/camera_sensor.h\n> > +++ b/include/libcamera/internal/camera_sensor.h\n> > @@ -77,6 +77,7 @@ private:\n> >  \tint generateId();\n> >  \tint validateSensorDriver();\n> >  \tvoid initVimcDefaultProperties();\n> > +\tvoid initStaticProperties();\n> >  \tint initProperties();\n> >\n> >  \tconst MediaEntity *entity_;\n> > diff --git a/src/libcamera/camera_sensor.cpp b/src/libcamera/camera_sensor.cpp\n> > index f7ed91d990f7..c012385ff056 100644\n> > --- a/src/libcamera/camera_sensor.cpp\n> > +++ b/src/libcamera/camera_sensor.cpp\n> > @@ -20,6 +20,7 @@\n> >\n> >  #include \"libcamera/internal/bayer_format.h\"\n> >  #include \"libcamera/internal/formats.h\"\n> > +#include \"libcamera/internal/sensor_database.h\"\n> >  #include \"libcamera/internal/sysfs.h\"\n> >  #include \"libcamera/internal/utils.h\"\n> >\n> > @@ -266,6 +267,9 @@ int CameraSensor::init()\n> >  \tif (ret)\n> >  \t\treturn ret;\n> >\n> > +\t/* Initialize the static properties from the sensor database. */\n> > +\tinitStaticProperties();\n> > +\n> >  \tret = initProperties();\n> >  \tif (ret)\n> >  \t\treturn ret;\n> > @@ -407,6 +411,21 @@ void CameraSensor::initVimcDefaultProperties()\n> >  \tactiveArea_ = Rectangle(pixelArraySize_);\n> >  }\n> >\n> > +void CameraSensor::initStaticProperties()\n> > +{\n> > +\tconst SensorInfo *info = SensorDatabase::get(model_);\n> > +\tif (!info) {\n> > +\t\tLOG(CameraSensor, Warning)\n> > +\t\t\t<< \"No static properties available for '\" << model_ << \"'\";\n> > +\t\tLOG(CameraSensor, Warning)\n> > +\t\t\t<< \"Please consider updating the sensor database\";\n>\n> Should we move this to the get() function in patch 1/3 ? I'm not sure if\n> we'll get more users of the sensor database, but if we do, that will\n> avoid duplicating the error message.\n>\n> > +\t\treturn;\n> > +\t}\n> > +\n> > +\t/* Register the properties retrieved from the sensor database. */\n> > +\tproperties_.set(properties::UnitCellSize, info->unitCellSize);\n> > +}\n> > +\n> >  int CameraSensor::initProperties()\n> >  {\n> >  \t/*\n> > @@ -444,7 +463,10 @@ int CameraSensor::initProperties()\n> >  \tif (ret)\n> >  \t\treturn ret;\n> >\n> > -\t/* Retrieve and store the camera sensor properties. */\n> > +\t/* Initialize the static properties from the sensor database. */\n> > +\tinitStaticProperties();\n>\n> Is there a need to call this function twice, here and in\n> CameraSensor::init() ?\n>\n\nUuuups, leftover..\n\nI'll remove the call in CameraSensor::init() as this function needs to\nbe called after model_ has been populated\n\nThanks\n  j\n\n> > +\n> > +\t/* Retrieve and register properties from the kernel interface. */\n> >  \tconst ControlInfoMap &controls = subdev_->controls();\n> >  \tint32_t propertyValue;\n> >\n>\n> --\n> Regards,\n>\n> Laurent Pinchart","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 99839BD1F6\n\tfor <parsemail@patchwork.libcamera.org>;\n\tTue, 13 Apr 2021 09:40:56 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 2A942687F4;\n\tTue, 13 Apr 2021 11:40:56 +0200 (CEST)","from relay6-d.mail.gandi.net (relay6-d.mail.gandi.net\n\t[217.70.183.198])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 99E06687F3\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue, 13 Apr 2021 11:40:54 +0200 (CEST)","from uno.localdomain (93-34-118-233.ip49.fastwebnet.it\n\t[93.34.118.233]) (Authenticated sender: jacopo@jmondi.org)\n\tby relay6-d.mail.gandi.net (Postfix) with ESMTPSA id A8E4DC000A;\n\tTue, 13 Apr 2021 09:40:53 +0000 (UTC)"],"X-Originating-IP":"93.34.118.233","Date":"Tue, 13 Apr 2021 11:41:32 +0200","From":"Jacopo Mondi <jacopo@jmondi.org>","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","Message-ID":"<20210413094132.za6zziiwqknfzgk5@uno.localdomain>","References":"<20210412075702.9955-1-jacopo@jmondi.org>\n\t<20210412075702.9955-3-jacopo@jmondi.org>\n\t<YHT4J4MVeh9D58gO@pendragon.ideasonboard.com>","MIME-Version":"1.0","Content-Disposition":"inline","In-Reply-To":"<YHT4J4MVeh9D58gO@pendragon.ideasonboard.com>","Subject":"Re: [libcamera-devel] [PATCH v4 2/3] libcamera: camera_sensor:\n\tRegister static properties","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":"Niklas =?utf-8?q?S=C3=B6derlund?=\n\t<niklas.soderlund+renesas@ragnatech.se>,\n\tlibcamera-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>"}}]