[{"id":23297,"web_url":"https://patchwork.libcamera.org/comment/23297/","msgid":"<YpjDZDG6XHLn9BoR@pendragon.ideasonboard.com>","date":"2022-06-02T14:04:20","subject":"Re: [libcamera-devel] [PATCH v5 0/4] generate and use fixed-sized\n\tSpan Control types","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Christian,\n\nOn Thu, Jun 02, 2022 at 12:17:58AM +0100, Christian Rauch via libcamera-devel wrote:\n> Hello,\n> \n> This is the rebased version of my patch set with minor modifications\n> for an additional control value that was added in the meantime. I\n> additionally prefixed and capitalised the commit messages to follow\n> the estalished commit style.\n> \n> The last remaining concern was about the use of \"std::optional\". This\n> has been resolved now by accepting std::optional in the public API.\n\nI'm getting lots of compilation errors in the Android camera HAL\nimplementation (src/android/). Could you enable compilation of that\ncomponent (meson configure -D android=enabled) and fix them ?\n\n> Christian Rauch (4):\n>   libcamera: controls: Use std::optional to handle invalid control\n>     values\n>   libcamera: controls: Define size of array controls as a shape vector\n>   libcamera: controls: Generate fixed- and variable-sized Span Controls\n>   libcamera: controls: Apply explicit fixed-sized Span type casts\n> \n>  include/libcamera/controls.h                  |  7 ++--\n>  src/cam/main.cpp                              |  4 +--\n>  src/ipa/raspberrypi/raspberrypi.cpp           | 21 ++++++------\n>  src/libcamera/control_ids.yaml                |  4 +--\n>  src/libcamera/pipeline/ipu3/ipu3.cpp          |  9 +++---\n>  .../pipeline/raspberrypi/raspberrypi.cpp      | 10 +++---\n>  src/libcamera/property_ids.yaml               |  4 +--\n>  src/qcam/dng_writer.cpp                       | 15 +++++----\n>  utils/gen-controls.py                         | 32 +++++++++++++------\n>  9 files changed, 62 insertions(+), 44 deletions(-)","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 3B675BD160\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu,  2 Jun 2022 14:04:27 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 9D0EE65631;\n\tThu,  2 Jun 2022 16:04:26 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 70A4E633A5\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu,  2 Jun 2022 16:04:24 +0200 (CEST)","from pendragon.ideasonboard.com\n\t(lmontsouris-659-1-41-236.w92-154.abo.wanadoo.fr [92.154.76.236])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 131FC6BD;\n\tThu,  2 Jun 2022 16:04:24 +0200 (CEST)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1654178666;\n\tbh=PKXU2DVUrwQjjjxoOK6B6Bt8D+I0VwvOV7FtaO2Hhb8=;\n\th=Date:To:References:In-Reply-To:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:\n\tFrom;\n\tb=k2TFDulf4R4wkXA71LWCPC9eeScoMa1IhQ+spPA0Z1gOXkKJ3dTB62xUquE8REH91\n\tmjenSG5y+gukwHVtNja6B65r9aDNmU0CwOVDGNgcO6kUfRcVSqcdGLTjDsFMuLjaPy\n\t5b4Km+bcq3t6LvVTJ/chL0i/JERTx53U21/KNCtSWM1s2iJ88SP5l+s1T5OIAEMVed\n\t9LmB+Iqlp9d4VnFcuhkkjv13fpMHrtjmWDnj6NEb3scq3fbbvMfWIppn4KA8OxiBBQ\n\t1tRG3q9y6YK/c8gQmyZArZU/ykIcsbSMKmD701UYlzlEqOAelBYZsjvc3ArZQK4/mQ\n\tg5lMnTyz0AlSQ==","v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1654178664;\n\tbh=PKXU2DVUrwQjjjxoOK6B6Bt8D+I0VwvOV7FtaO2Hhb8=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=lFMCrJt/5KBtSHzXuGYwmBc9jTatxvw15wqgxryb/eUIEElqXf/2ks94RqSd4AjHU\n\tFYO4PHGo29NINalNJxc0SIbn/5xQ3Of9oRX6/Z36vUN7XLaseECMdVjw2oYoH9XIop\n\tG8ny+UNKi16ZOLajsF3p+WSFD/VV3xnCwoZPzKAQ="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=ideasonboard.com\n\theader.i=@ideasonboard.com\n\theader.b=\"lFMCrJt/\"; dkim-atps=neutral","Date":"Thu, 2 Jun 2022 17:04:20 +0300","To":"Christian Rauch <Rauch.Christian@gmx.de>","Message-ID":"<YpjDZDG6XHLn9BoR@pendragon.ideasonboard.com>","References":"<20220601231802.16735-1-Rauch.Christian@gmx.de>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<20220601231802.16735-1-Rauch.Christian@gmx.de>","Subject":"Re: [libcamera-devel] [PATCH v5 0/4] generate and use fixed-sized\n\tSpan Control types","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>","From":"Laurent Pinchart via libcamera-devel\n\t<libcamera-devel@lists.libcamera.org>","Reply-To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","Cc":"libcamera-devel@lists.libcamera.org","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":23302,"web_url":"https://patchwork.libcamera.org/comment/23302/","msgid":"<20220603074227.qqvrp5hwvnrl5hwn@uno.localdomain>","date":"2022-06-03T07:42:27","subject":"Re: [libcamera-devel] [PATCH v5 0/4] generate and use fixed-sized\n\tSpan Control types","submitter":{"id":3,"url":"https://patchwork.libcamera.org/api/people/3/","name":"Jacopo Mondi","email":"jacopo@jmondi.org"},"content":"Hi\n\nOn Thu, Jun 02, 2022 at 05:04:20PM +0300, Laurent Pinchart via libcamera-devel wrote:\n> Hi Christian,\n>\n> On Thu, Jun 02, 2022 at 12:17:58AM +0100, Christian Rauch via libcamera-devel wrote:\n> > Hello,\n> >\n> > This is the rebased version of my patch set with minor modifications\n> > for an additional control value that was added in the meantime. I\n> > additionally prefixed and capitalised the commit messages to follow\n> > the estalished commit style.\n> >\n> > The last remaining concern was about the use of \"std::optional\". This\n> > has been resolved now by accepting std::optional in the public API.\n>\n> I'm getting lots of compilation errors in the Android camera HAL\n> implementation (src/android/). Could you enable compilation of that\n> component (meson configure -D android=enabled) and fix them ?\n>\n\nFTR I also get:\n\n        AttributeError: module 'math' has no attribute 'prod'\n\nwhen building with Python 3.6 installed (chrome os SDK in my case)\n\n> > Christian Rauch (4):\n> >   libcamera: controls: Use std::optional to handle invalid control\n> >     values\n> >   libcamera: controls: Define size of array controls as a shape vector\n> >   libcamera: controls: Generate fixed- and variable-sized Span Controls\n> >   libcamera: controls: Apply explicit fixed-sized Span type casts\n> >\n> >  include/libcamera/controls.h                  |  7 ++--\n> >  src/cam/main.cpp                              |  4 +--\n> >  src/ipa/raspberrypi/raspberrypi.cpp           | 21 ++++++------\n> >  src/libcamera/control_ids.yaml                |  4 +--\n> >  src/libcamera/pipeline/ipu3/ipu3.cpp          |  9 +++---\n> >  .../pipeline/raspberrypi/raspberrypi.cpp      | 10 +++---\n> >  src/libcamera/property_ids.yaml               |  4 +--\n> >  src/qcam/dng_writer.cpp                       | 15 +++++----\n> >  utils/gen-controls.py                         | 32 +++++++++++++------\n> >  9 files changed, 62 insertions(+), 44 deletions(-)\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 CCC9BBD161\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri,  3 Jun 2022 07:42:32 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id DC60665636;\n\tFri,  3 Jun 2022 09:42:31 +0200 (CEST)","from relay12.mail.gandi.net (relay12.mail.gandi.net\n\t[217.70.178.232])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 80C4F633A6\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri,  3 Jun 2022 09:42:30 +0200 (CEST)","(Authenticated sender: jacopo@jmondi.org)\n\tby mail.gandi.net (Postfix) with ESMTPSA id A2397200012;\n\tFri,  3 Jun 2022 07:42:29 +0000 (UTC)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1654242152;\n\tbh=Awv2k/ONbop+S4qiq5PN0DETINkAJOMTtvGudReUg9w=;\n\th=Date:To:References:In-Reply-To:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:\n\tFrom;\n\tb=VG9A93x+l3i9v0cmnmkC+wcB/H6+wM5RkDK7ODQMNMH19WeRxQJUCoCG6ezeia7q3\n\tqikeCb1vZH7CHsCWRNhMF3YgfGTmqpAQp+Om1fyYJPqIUwIFqPVSAcxP/rvpdweWYB\n\tOcUtAfmp+rYGENAgWcaRvP0YoMlANeiQkMiiqZnUz/k5tFSGZUVKjoV990Tg27odtr\n\tyvuE3LN7YxSfMTpg20fCffgJASV8yT/dnhQlmOR7qIYtiRvb6EP74SeokUetX4QstV\n\t3h0JrhwuzzNcgR2d0rAy0S/HPvUNWlvlQJVeyxYWFzVM5y5tVsITuOgDqwrb98/BVb\n\tHysGA++bxRE4g==","Date":"Fri, 3 Jun 2022 09:42:27 +0200","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","Message-ID":"<20220603074227.qqvrp5hwvnrl5hwn@uno.localdomain>","References":"<20220601231802.16735-1-Rauch.Christian@gmx.de>\n\t<YpjDZDG6XHLn9BoR@pendragon.ideasonboard.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<YpjDZDG6XHLn9BoR@pendragon.ideasonboard.com>","Subject":"Re: [libcamera-devel] [PATCH v5 0/4] generate and use fixed-sized\n\tSpan Control types","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>","From":"Jacopo Mondi via libcamera-devel <libcamera-devel@lists.libcamera.org>","Reply-To":"Jacopo Mondi <jacopo@jmondi.org>","Cc":"libcamera-devel@lists.libcamera.org","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}}]