[{"id":16738,"web_url":"https://patchwork.libcamera.org/comment/16738/","msgid":"<YI/WouThz207aoSZ@bismarck.dyn.berto.se>","date":"2021-05-03T10:55:30","subject":"Re: [libcamera-devel] [PATCH v2 6/7] libcamera: ipu3: imgu: Add\n\tpipe calculation debug","submitter":{"id":5,"url":"https://patchwork.libcamera.org/api/people/5/","name":"Niklas Söderlund","email":"niklas.soderlund@ragnatech.se"},"content":"Hi Jacopo,\n\nThanks for your patch.\n\nOn 2021-05-03 11:27:04 +0200, Jacopo Mondi wrote:\n> Add pipe calculation debug with a new associated log category.\n> \n> This helps compare the pipe calculation with the one performed by the\n> python script.\n> \n> Tested-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>\n> Reviewed-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>\n> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n> Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>\n> ---\n>  src/libcamera/pipeline/ipu3/imgu.cpp | 34 ++++++++++++++++++++++++----\n>  1 file changed, 30 insertions(+), 4 deletions(-)\n> \n> diff --git a/src/libcamera/pipeline/ipu3/imgu.cpp b/src/libcamera/pipeline/ipu3/imgu.cpp\n> index fa8cf7eeef19..c874a07e8da6 100644\n> --- a/src/libcamera/pipeline/ipu3/imgu.cpp\n> +++ b/src/libcamera/pipeline/ipu3/imgu.cpp\n> @@ -23,6 +23,7 @@\n>  namespace libcamera {\n>  \n>  LOG_DECLARE_CATEGORY(IPU3)\n> +LOG_DEFINE_CATEGORY(ImgUPipe)\n\nI like how easy it is to do tings like this.\n\nReviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>\n\n>  \n>  namespace {\n>  \n> @@ -128,6 +129,8 @@ void calculateBDSHeight(ImgUDevice::Pipe *pipe, const Size &iif, const Size &gdc\n>  \tunsigned int ifHeight;\n>  \tfloat bdsHeight;\n>  \n> +\tLOG(ImgUPipe, Debug) << \"BDS sf: \" << bdsSF << \", BDS width: \" << bdsWidth;\n> +\n>  \tif (!isSameRatio(pipe->input, gdc)) {\n>  \t\tunsigned int foundIfHeights[2] = { 0, 0 };\n>  \t\tfloat estIFHeight = (iif.width * gdc.height) /\n> @@ -135,6 +138,9 @@ void calculateBDSHeight(ImgUDevice::Pipe *pipe, const Size &iif, const Size &gdc\n>  \t\testIFHeight = std::clamp<float>(estIFHeight, minIFHeight, iif.height);\n>  \n>  \t\tifHeight = utils::alignUp(estIFHeight, IF_ALIGN_H);\n> +\t\tLOG(ImgUPipe, Debug) << \"Estimated IF Height: \" << estIFHeight\n> +\t\t\t\t     << \", IF Height: \" << ifHeight;\n> +\n>  \t\twhile (ifHeight >= minIFHeight && ifHeight <= iif.height &&\n>  \t\t       ifHeight / bdsSF >= minBDSHeight) {\n>  \n> @@ -175,9 +181,15 @@ void calculateBDSHeight(ImgUDevice::Pipe *pipe, const Size &iif, const Size &gdc\n>  \n>  \t\tif (foundIfHeights[0] || foundIfHeights[1]) {\n>  \t\t\tunsigned int bdsIntHeight = static_cast<unsigned int>(bdsHeight);\n> +\t\t\tSize foundIf{ iif.width, ifHeight };\n> +\t\t\tSize foundBds{ bdsWidth, bdsIntHeight };\n>  \n> -\t\t\tpipeConfigs.push_back({ bdsSF, { iif.width, ifHeight },\n> -\t\t\t\t\t\t{ bdsWidth, bdsIntHeight }, gdc });\n> +\t\t\tLOG(ImgUPipe, Debug)\n> +\t\t\t\t<< \"IF: \" << foundIf.toString()\n> +\t\t\t\t<< \", BDS: \" << foundBds.toString()\n> +\t\t\t\t<< \", GDC: \" << gdc.toString();\n> +\n> +\t\t\tpipeConfigs.push_back({ bdsSF, foundIf, foundBds, gdc });\n>  \t\t\treturn;\n>  \t\t}\n>  \t} else {\n> @@ -190,8 +202,15 @@ void calculateBDSHeight(ImgUDevice::Pipe *pipe, const Size &iif, const Size &gdc\n>  \n>  \t\t\t\tif (!(ifHeight % IF_ALIGN_H) &&\n>  \t\t\t\t    !(bdsIntHeight % BDS_ALIGN_H)) {\n> -\t\t\t\t\tpipeConfigs.push_back({ bdsSF, { iif.width, ifHeight },\n> -\t\t\t\t\t\t\t\t{ bdsWidth, bdsIntHeight }, gdc });\n> +\t\t\t\t\tSize foundIf{ iif.width, ifHeight };\n> +\t\t\t\t\tSize foundBds{ bdsWidth, bdsIntHeight };\n> +\n> +\t\t\t\t\tLOG(ImgUPipe, Debug)\n> +\t\t\t\t\t\t<< \"IF: \" << foundIf.toString()\n> +\t\t\t\t\t\t<< \", BDS: \" << foundBds.toString()\n> +\t\t\t\t\t\t<< \", GDC: \" << gdc.toString();\n> +\n> +\t\t\t\t\tpipeConfigs.push_back({ bdsSF, foundIf, foundBds, gdc });\n>  \t\t\t\t}\n>  \t\t\t}\n>  \n> @@ -269,6 +288,8 @@ Size calculateGDC(ImgUDevice::Pipe *pipe)\n>  \tgdc.width = main.width * sf;\n>  \tgdc.height = main.height * sf;\n>  \n> +\tLOG(ImgUPipe, Debug) << \"GDC: \" << gdc.toString();\n> +\n>  \treturn gdc;\n>  }\n>  \n> @@ -286,6 +307,11 @@ FOV calcFOV(const Size &in, const ImgUDevice::PipeConfig &pipe)\n>  \tfov.w = (inW - (ifCropW + gdcCropW)) / inW;\n>  \tfov.h = (inH - (ifCropH + gdcCropH)) / inH;\n>  \n> +\tLOG(ImgUPipe, Debug)\n> +\t\t<< \"IF (\" << pipe.iif.toString() << \") - BDS (\"\n> +\t\t<< pipe.bds.toString() << \") - GDC (\" << pipe.gdc.toString()\n> +\t\t<< \") -> FOV: \" << fov.w << \"x\" << fov.h;\n> +\n>  \treturn fov;\n>  }\n>  \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 165ABBDE77\n\tfor <parsemail@patchwork.libcamera.org>;\n\tMon,  3 May 2021 10:55:33 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 93D80688AE;\n\tMon,  3 May 2021 12:55:32 +0200 (CEST)","from mail-ej1-x62a.google.com (mail-ej1-x62a.google.com\n\t[IPv6:2a00:1450:4864:20::62a])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id B39C360511\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon,  3 May 2021 12:55:31 +0200 (CEST)","by mail-ej1-x62a.google.com with SMTP id gx5so7158470ejb.11\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 03 May 2021 03:55:31 -0700 (PDT)","from localhost (p54ac5521.dip0.t-ipconnect.de. [84.172.85.33])\n\tby smtp.gmail.com with ESMTPSA id\n\tc19sm12246469edu.20.2021.05.03.03.55.30\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tMon, 03 May 2021 03:55:31 -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=\"zYF/bmqP\"; 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=26JPy2kvyB+yYF66weYgxAPFuPhGZYHzLrMB+SQ4L7Q=;\n\tb=zYF/bmqPA2sVk+rBGrfLupji/gvNuo8nPpGeHMKqUT01+kBGU2gThenvA7BYhFJxMz\n\tNSia6eE5l87Ba5tvjAjCQS7nSfRFztHmQHzr53w0ovEUv/UwvfHfcSPod5QpDbIn2OIp\n\tbxsnMXymI1o29nS4lIAroBL0EtD4xaRT78n9zgBQGrkVeUMaxtX623oU9juzqA7bNcuk\n\tEc2yWxD1AC94p4JdVEwOSHRR9SperfvvZ3kWwFFxkLcg/zicTJpIX8a0YsO4okkKThJy\n\tz1GNAyjs5SghRrwKI+UkBi+7DhF26oglYhH0DX2aAyef4fTLa5xFmzWMTzk3G7JvsRPs\n\trmXA==","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=26JPy2kvyB+yYF66weYgxAPFuPhGZYHzLrMB+SQ4L7Q=;\n\tb=TVyIOBNd3hx+ZFQJ4uzfnSCE8sLutCtkLDjSNFI1dx/Fv6oYZqrnQs4jCl2fBWFgDx\n\twwJmxHqBWDcA4ayQ74TDXHVKClLef1xziHbFzdmytElE0f2szDIzUhVLZOY1iNe8uKDd\n\tjhU9lvxOfRwhsJxAiHpKvagfAraFjJIPPmezZpJKVh+KOSLBCLsQ8Xr1L6g0OXp4RJW9\n\tNu0VODpz3JCd9bHJt8TEVGRofjg7P3VhrKxqO3eINzqOH+rAs5U7tfgggRM8R7+qv94d\n\t6rQbiezYKm8K7Ej5EYfci5Yo3pYwpEUU7TdvzkLcT51DUqvrjAk5sUdmG3oLi/VEcOyz\n\tD6Mw==","X-Gm-Message-State":"AOAM532tLdNZ0kCUODzfzYjflteh8+lexNa1UP+5IgMB6sKjoXO7Bcqg\n\tt+3YtvlYs5GYgYw4e9bzQVKO2Q==","X-Google-Smtp-Source":"ABdhPJwfsTbZuB6fJ58/W1thsePZ2TKB79bl0IcV2gqddGGpcmSr2+iFFQIf2LAH+BHvSXs/I0Lq7g==","X-Received":"by 2002:a17:906:719a:: with SMTP id\n\th26mr16077228ejk.135.1620039331362; \n\tMon, 03 May 2021 03:55:31 -0700 (PDT)","Date":"Mon, 3 May 2021 12:55:30 +0200","From":"Niklas =?iso-8859-1?q?S=F6derlund?= <niklas.soderlund@ragnatech.se>","To":"Jacopo Mondi <jacopo@jmondi.org>","Message-ID":"<YI/WouThz207aoSZ@bismarck.dyn.berto.se>","References":"<20210503092705.15562-1-jacopo@jmondi.org>\n\t<20210503092705.15562-7-jacopo@jmondi.org>","MIME-Version":"1.0","Content-Disposition":"inline","In-Reply-To":"<20210503092705.15562-7-jacopo@jmondi.org>","Subject":"Re: [libcamera-devel] [PATCH v2 6/7] libcamera: ipu3: imgu: Add\n\tpipe calculation debug","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":16788,"web_url":"https://patchwork.libcamera.org/comment/16788/","msgid":"<CAO5uPHO_tfwMJAHAwgo=YUiSNQGetZtCLGScA0jwovgnyZzYeA@mail.gmail.com>","date":"2021-05-06T05:56:55","subject":"Re: [libcamera-devel] [PATCH v2 6/7] libcamera: ipu3: imgu: Add\n\tpipe calculation debug","submitter":{"id":63,"url":"https://patchwork.libcamera.org/api/people/63/","name":"Hirokazu Honda","email":"hiroh@chromium.org"},"content":"Hi Jacopo, thank you for the patch,\n\nOn Mon, May 3, 2021 at 7:55 PM Niklas Söderlund <\nniklas.soderlund@ragnatech.se> wrote:\n\n> Hi Jacopo,\n>\n> Thanks for your patch.\n>\n> On 2021-05-03 11:27:04 +0200, Jacopo Mondi wrote:\n> > Add pipe calculation debug with a new associated log category.\n> >\n> > This helps compare the pipe calculation with the one performed by the\n> > python script.\n> >\n> > Tested-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>\n> > Reviewed-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>\n> > Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n> > Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>\n> > ---\n> >  src/libcamera/pipeline/ipu3/imgu.cpp | 34 ++++++++++++++++++++++++----\n> >  1 file changed, 30 insertions(+), 4 deletions(-)\n> >\n> > diff --git a/src/libcamera/pipeline/ipu3/imgu.cpp\n> b/src/libcamera/pipeline/ipu3/imgu.cpp\n> > index fa8cf7eeef19..c874a07e8da6 100644\n> > --- a/src/libcamera/pipeline/ipu3/imgu.cpp\n> > +++ b/src/libcamera/pipeline/ipu3/imgu.cpp\n> > @@ -23,6 +23,7 @@\n> >  namespace libcamera {\n> >\n> >  LOG_DECLARE_CATEGORY(IPU3)\n> > +LOG_DEFINE_CATEGORY(ImgUPipe)\n>\n> I like how easy it is to do tings like this.\n>\n> Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>\n>\n>\nReviewed-by: Hirokazu Honda <hiroh@chromium.org>\n\n\n> >\n> >  namespace {\n> >\n> > @@ -128,6 +129,8 @@ void calculateBDSHeight(ImgUDevice::Pipe *pipe,\n> const Size &iif, const Size &gdc\n> >       unsigned int ifHeight;\n> >       float bdsHeight;\n> >\n> > +     LOG(ImgUPipe, Debug) << \"BDS sf: \" << bdsSF << \", BDS width: \" <<\n> bdsWidth;\n> > +\n> >       if (!isSameRatio(pipe->input, gdc)) {\n> >               unsigned int foundIfHeights[2] = { 0, 0 };\n> >               float estIFHeight = (iif.width * gdc.height) /\n> > @@ -135,6 +138,9 @@ void calculateBDSHeight(ImgUDevice::Pipe *pipe,\n> const Size &iif, const Size &gdc\n> >               estIFHeight = std::clamp<float>(estIFHeight, minIFHeight,\n> iif.height);\n> >\n> >               ifHeight = utils::alignUp(estIFHeight, IF_ALIGN_H);\n> > +             LOG(ImgUPipe, Debug) << \"Estimated IF Height: \" <<\n> estIFHeight\n> > +                                  << \", IF Height: \" << ifHeight;\n> > +\n> >               while (ifHeight >= minIFHeight && ifHeight <= iif.height &&\n> >                      ifHeight / bdsSF >= minBDSHeight) {\n> >\n> > @@ -175,9 +181,15 @@ void calculateBDSHeight(ImgUDevice::Pipe *pipe,\n> const Size &iif, const Size &gdc\n> >\n> >               if (foundIfHeights[0] || foundIfHeights[1]) {\n> >                       unsigned int bdsIntHeight = static_cast<unsigned\n> int>(bdsHeight);\n> > +                     Size foundIf{ iif.width, ifHeight };\n> > +                     Size foundBds{ bdsWidth, bdsIntHeight };\n> >\n> > -                     pipeConfigs.push_back({ bdsSF, { iif.width,\n> ifHeight },\n> > -                                             { bdsWidth, bdsIntHeight\n> }, gdc });\n> > +                     LOG(ImgUPipe, Debug)\n> > +                             << \"IF: \" << foundIf.toString()\n> > +                             << \", BDS: \" << foundBds.toString()\n> > +                             << \", GDC: \" << gdc.toString();\n> > +\n> > +                     pipeConfigs.push_back({ bdsSF, foundIf, foundBds,\n> gdc });\n> >                       return;\n> >               }\n> >       } else {\n> > @@ -190,8 +202,15 @@ void calculateBDSHeight(ImgUDevice::Pipe *pipe,\n> const Size &iif, const Size &gdc\n> >\n> >                               if (!(ifHeight % IF_ALIGN_H) &&\n> >                                   !(bdsIntHeight % BDS_ALIGN_H)) {\n> > -                                     pipeConfigs.push_back({ bdsSF, {\n> iif.width, ifHeight },\n> > -                                                             {\n> bdsWidth, bdsIntHeight }, gdc });\n> > +                                     Size foundIf{ iif.width, ifHeight\n> };\n> > +                                     Size foundBds{ bdsWidth,\n> bdsIntHeight };\n> > +\n> > +                                     LOG(ImgUPipe, Debug)\n> > +                                             << \"IF: \" <<\n> foundIf.toString()\n> > +                                             << \", BDS: \" <<\n> foundBds.toString()\n> > +                                             << \", GDC: \" <<\n> gdc.toString();\n> > +\n> > +                                     pipeConfigs.push_back({ bdsSF,\n> foundIf, foundBds, gdc });\n> >                               }\n> >                       }\n> >\n> > @@ -269,6 +288,8 @@ Size calculateGDC(ImgUDevice::Pipe *pipe)\n> >       gdc.width = main.width * sf;\n> >       gdc.height = main.height * sf;\n> >\n> > +     LOG(ImgUPipe, Debug) << \"GDC: \" << gdc.toString();\n> > +\n> >       return gdc;\n> >  }\n> >\n> > @@ -286,6 +307,11 @@ FOV calcFOV(const Size &in, const\n> ImgUDevice::PipeConfig &pipe)\n> >       fov.w = (inW - (ifCropW + gdcCropW)) / inW;\n> >       fov.h = (inH - (ifCropH + gdcCropH)) / inH;\n> >\n> > +     LOG(ImgUPipe, Debug)\n> > +             << \"IF (\" << pipe.iif.toString() << \") - BDS (\"\n> > +             << pipe.bds.toString() << \") - GDC (\" <<\n> pipe.gdc.toString()\n> > +             << \") -> FOV: \" << fov.w << \"x\" << fov.h;\n> > +\n> >       return fov;\n> >  }\n> >\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\n>\n> --\n> Regards,\n> Niklas Söderlund\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 D2EC7BDE7D\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu,  6 May 2021 05:57:07 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 824D568919;\n\tThu,  6 May 2021 07:57:07 +0200 (CEST)","from mail-ej1-x632.google.com (mail-ej1-x632.google.com\n\t[IPv6:2a00:1450:4864:20::632])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 3438468901\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu,  6 May 2021 07:57:06 +0200 (CEST)","by mail-ej1-x632.google.com with SMTP id u3so6414411eja.12\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 05 May 2021 22:57:06 -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=\"DS/GR2fV\"; 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; bh=ilupwqvwTqOnD3pviLMszFPFLCPSShlfpCT/uoEE55M=;\n\tb=DS/GR2fV1Lc8ba8UIW0xUoTamSHYGU3XeQI2SvayDEoA+wC8wj4boQW+VQmCcsjwVa\n\t1AtR62nVGpNt6MTuljWSTYa5aXeKlLJM6Esg9r76qXu+kTHIDGQAq5ZDajj9TOebsrF9\n\tSWTD0xvDMPKTyXzqh/pnfj6vOxbr2NIyKJWKQ=","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;\n\tbh=ilupwqvwTqOnD3pviLMszFPFLCPSShlfpCT/uoEE55M=;\n\tb=i/L8l4HTwjHgZ+83xcyju6QExASnd+8/iOI4uqXvA016ixefD7LI0Kg8FLMNUX/8uu\n\tnHGYTiYmatrW0fa+DjHFCDbTCUDa/QcKY8HWKMdcsoAeiShUm2m/HMXC3lR3czR/KjSs\n\tgUXAFa02BgsqmXYcsq+y7JM/6iQeEIanCokcbNDjpFvWQ5eEcj7ULVol3mmKuiiaFN6o\n\tan2Wmndz5n++1OdT7+lAlee4e6CzR0giAVftITVrt0+1l83s7I5/AALtomxf5HCgkFC/\n\tT+7aXIdl5hCZ+r7okjOpxc5/Cdt/wLZ53AyUO+9esM0Z76tW0XJU3ug070ZPgvRXhlZY\n\tLUnA==","X-Gm-Message-State":"AOAM530aQP9lE0qcA2Wu12bw5L8KI4Go2vCzXyVjyiZAa8sHukap2Ao9\n\tf3NKUtFPiLqIBh5NwrivwNIxMqYwMTGtwwDIwWZgUA==","X-Google-Smtp-Source":"ABdhPJxpbKS7gWM+fUPTdn64Ydz64CuMrsVAzm60wJLn4jRhBIHMmtx3xpzXNfaKBzKjXfc9Od3LjYRoTXgVa/spzkw=","X-Received":"by 2002:a17:906:5acd:: with SMTP id\n\tx13mr2412125ejs.243.1620280625922; \n\tWed, 05 May 2021 22:57:05 -0700 (PDT)","MIME-Version":"1.0","References":"<20210503092705.15562-1-jacopo@jmondi.org>\n\t<20210503092705.15562-7-jacopo@jmondi.org>\n\t<YI/WouThz207aoSZ@bismarck.dyn.berto.se>","In-Reply-To":"<YI/WouThz207aoSZ@bismarck.dyn.berto.se>","From":"Hirokazu Honda <hiroh@chromium.org>","Date":"Thu, 6 May 2021 14:56:55 +0900","Message-ID":"<CAO5uPHO_tfwMJAHAwgo=YUiSNQGetZtCLGScA0jwovgnyZzYeA@mail.gmail.com>","To":"=?utf-8?q?Niklas_S=C3=B6derlund?= <niklas.soderlund@ragnatech.se>","Subject":"Re: [libcamera-devel] [PATCH v2 6/7] libcamera: ipu3: imgu: Add\n\tpipe calculation debug","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 <libcamera-devel@lists.libcamera.org>","Content-Type":"multipart/mixed;\n\tboundary=\"===============7968566928090399834==\"","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}}]