[{"id":14623,"web_url":"https://patchwork.libcamera.org/comment/14623/","msgid":"<CAHW6GYKpZ_3Mto4u22vM+NNrFPK28A7ccpn0BRaQ7+=KuRtjTQ@mail.gmail.com>","date":"2021-01-20T10:00:24","subject":"Re: [libcamera-devel] [PATCH 3/5] uapi: raspberrypi: Update the\n\tbcm2835-isp header definition","submitter":{"id":42,"url":"https://patchwork.libcamera.org/api/people/42/","name":"David Plowman","email":"david.plowman@raspberrypi.com"},"content":"Hi Naush\n\nThanks for this patch.\n\nOn Wed, 20 Jan 2021 at 08:35, Naushir Patuck <naush@raspberrypi.com> wrote:\n>\n> Update the bcm2835-isp.h file with the latest version available in the\n> downstream Raspberryp Pi linux repo.\n>\n> This change adds support for colour denoise processing, and the\n> following downstream kernel changes must be available:\n> https://github.com/raspberrypi/linux/pull/4069\n> https://github.com/raspberrypi/linux/pull/4083\n>\n> The Raspberry Pi image must also be running the latest firmware,\n> obtained by running rpi-update.\n>\n> Signed-off-by: Naushir Patuck <naush@raspberrypi.com>\n> ---\n>  include/linux/bcm2835-isp.h | 32 +++++++++++++++++++++++++++++---\n>  1 file changed, 29 insertions(+), 3 deletions(-)\n>\n> diff --git a/include/linux/bcm2835-isp.h b/include/linux/bcm2835-isp.h\n> index 45abb681517e..94c3af947883 100644\n> --- a/include/linux/bcm2835-isp.h\n> +++ b/include/linux/bcm2835-isp.h\n> @@ -31,7 +31,8 @@\n>                                 (V4L2_CID_USER_BCM2835_ISP_BASE + 0x0007)\n>  #define V4L2_CID_USER_BCM2835_ISP_DPC          \\\n>                                 (V4L2_CID_USER_BCM2835_ISP_BASE + 0x0008)\n> -\n> +#define V4L2_CID_USER_BCM2835_ISP_CDN \\\n> +                               (V4L2_CID_USER_BCM2835_ISP_BASE + 0x0009)\n>  /*\n>   * All structs below are directly mapped onto the equivalent structs in\n>   * drivers/staging/vc04_services/vchiq-mmal/mmal-parameters.h\n> @@ -46,7 +47,7 @@\n>   */\n>  struct bcm2835_isp_rational {\n>         __s32 num;\n> -       __s32 den;\n> +       __u32 den;\n\nPickier people than myself might comment that this seems unrelated,\nthough I agree it looks sensible!\n\n>  };\n>\n>  /**\n> @@ -140,7 +141,7 @@ struct bcm2835_isp_black_level {\n>         __u16 black_level_r;\n>         __u16 black_level_g;\n>         __u16 black_level_b;\n> -       __u8 pad_[2]; /* Unused */\n> +       __u8 padding[2]; /* Unused */\n\nDitto!\n\nApart from these small things:\n\nReviewed-by: David Plowman <david.plowman@raspberrypi.com>\n\nThanks!\nDavid\n\n>  };\n>\n>  /**\n> @@ -175,6 +176,31 @@ struct bcm2835_isp_gamma {\n>         __u16 y[BCM2835_NUM_GAMMA_PTS];\n>  };\n>\n> +/**\n> + * enum bcm2835_isp_cdn_mode - Mode of operation for colour denoise.\n> + *\n> +  * @CDN_MODE_FAST:            Fast (but lower quality) colour denoise\n> + *                             algorithm, typically used for video recording.\n> + * @CDN_HIGH_QUALITY:          High quality (but slower) colour denoise\n> + *                             algorithm, typically used for stills capture.\n> + */\n> +enum bcm2835_isp_cdn_mode {\n> +       CDN_MODE_FAST = 0,\n> +       CDN_MODE_HIGH_QUALITY = 1,\n> +};\n> +\n> +/**\n> + * struct bcm2835_isp_cdn - Colour denoise parameters set with the\n> + *                         V4L2_CID_USER_BCM2835_ISP_CDN ctrl.\n> + *\n> + * @enabled:   Enable colour denoise.\n> + * @cdn_mode:  Colour denoise operating mode (see enum &bcm2835_isp_cdn_mode)\n> + */\n> +struct bcm2835_isp_cdn {\n> +       __u32 enabled;\n> +       __u32 mode;\n> +};\n> +\n>  /**\n>   * struct bcm2835_isp_denoise - Denoise parameters set with the\n>   *                             V4L2_CID_USER_BCM2835_ISP_DENOISE ctrl.\n> --\n> 2.25.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 DA188C0F2A\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed, 20 Jan 2021 10:00:38 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 61C9468182;\n\tWed, 20 Jan 2021 11:00:38 +0100 (CET)","from mail-ot1-x32e.google.com (mail-ot1-x32e.google.com\n\t[IPv6:2607:f8b0:4864:20::32e])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 9D44568177\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 20 Jan 2021 11:00:36 +0100 (CET)","by mail-ot1-x32e.google.com with SMTP id i20so15039084otl.7\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 20 Jan 2021 02:00:36 -0800 (PST)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=raspberrypi.com header.i=@raspberrypi.com\n\theader.b=\"sDFnqz1R\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=raspberrypi.com; s=google;\n\th=mime-version:references:in-reply-to:from:date:message-id:subject:to\n\t:cc; bh=6lcHw5MffJ8jEPSfYjNWqORHFHXV44E3LesxRvCqQW8=;\n\tb=sDFnqz1RM1USMZDnb8lELpbHxifciQGXajUuo67I94iuscFqlyOKkw7sIsIH9UpG3d\n\tT5FdlaMHlF+MAGSaToxIXQtHW5RL9njtEDoa5iaTc4DiauC3AmtHrBOiAVPIVPVxqeUb\n\tB1z8QgPqVvp7nT6QtsrBB3demDcjLE9iYBjZRbVH9riqEKBH6KVWI93ZoYMdhS6ouljl\n\tVKPnIjw/Bpjw5L/Ys80XTdX6EVvnQwhrrWbNU86T5X+x2DpalYDQAD8J+9IX8NGGOtam\n\tHF41LuTdcFYlWJ7+8TbVNOiTfDVqIf/IB+bEuSuFMCWUnqfk76aGVSIOSy+70Xa7/HWo\n\teYsQ==","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=6lcHw5MffJ8jEPSfYjNWqORHFHXV44E3LesxRvCqQW8=;\n\tb=Yfqzr66cFSO7zpcbW0JaDK3p8vZmdWzAdTwrNOYFhQEO6Mzphhlt7RACVjCLmhUc3a\n\torENCzVY/2KYchAqWN7EItKn+FEJp4llinD22UEOkwuPm4Bmaf/QZQWS0sPmXheMuqQD\n\tn7PnUlrX+UwH171HYaLytn5w33LHmySadaJdTZq/NbUKI7a+jUnmCuROtBJuKvIyqA7k\n\tI2t61crSx9Af8wOSNz/dxQzILO3fLQQ2XgOg633vt1kI/OKRIkHmpKX5EatOpR19HB0h\n\tkmHy5787TnNYmUhO/IMpVEh+LLntE8QZkl5BCBXx3V/sapul3z0exf42QlOq4yQ4tEzX\n\tMDlw==","X-Gm-Message-State":"AOAM531vd8EFOlPOJw96/Aav9OiCje7Qvm5ECZBXiEuAK8cxo2qVEDW9\n\tNWO96WchmoVtrQ0h6f48NWdwbLkkomSZs8MtMxBKZw==","X-Google-Smtp-Source":"ABdhPJxLVntUELJHsnTq84gCgSXQPdX4Iu0oCOygnN8mItlaEwMPKTA7n6Kr5eGoSzZNq5WNyrLC5oJA3z6D17t2ACc=","X-Received":"by 2002:a9d:6852:: with SMTP id\n\tc18mr2738059oto.166.1611136835517; \n\tWed, 20 Jan 2021 02:00:35 -0800 (PST)","MIME-Version":"1.0","References":"<20210120083449.642418-1-naush@raspberrypi.com>\n\t<20210120083449.642418-4-naush@raspberrypi.com>","In-Reply-To":"<20210120083449.642418-4-naush@raspberrypi.com>","From":"David Plowman <david.plowman@raspberrypi.com>","Date":"Wed, 20 Jan 2021 10:00:24 +0000","Message-ID":"<CAHW6GYKpZ_3Mto4u22vM+NNrFPK28A7ccpn0BRaQ7+=KuRtjTQ@mail.gmail.com>","To":"Naushir Patuck <naush@raspberrypi.com>","Subject":"Re: [libcamera-devel] [PATCH 3/5] uapi: raspberrypi: Update the\n\tbcm2835-isp header definition","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":"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":14625,"web_url":"https://patchwork.libcamera.org/comment/14625/","msgid":"<CAEmqJPreeey31uhMZ_HHcgoRJC2HnVNeE51VD88hRUgVJvmfUg@mail.gmail.com>","date":"2021-01-20T10:04:04","subject":"Re: [libcamera-devel] [PATCH 3/5] uapi: raspberrypi: Update the\n\tbcm2835-isp header definition","submitter":{"id":34,"url":"https://patchwork.libcamera.org/api/people/34/","name":"Naushir Patuck","email":"naush@raspberrypi.com"},"content":"Hi David,\n\nThank you for your review feedback.\n\nOn Wed, 20 Jan 2021 at 10:00, David Plowman <david.plowman@raspberrypi.com>\nwrote:\n\n> Hi Naush\n>\n> Thanks for this patch.\n>\n> On Wed, 20 Jan 2021 at 08:35, Naushir Patuck <naush@raspberrypi.com>\n> wrote:\n> >\n> > Update the bcm2835-isp.h file with the latest version available in the\n> > downstream Raspberryp Pi linux repo.\n> >\n> > This change adds support for colour denoise processing, and the\n> > following downstream kernel changes must be available:\n> > https://github.com/raspberrypi/linux/pull/4069\n> > https://github.com/raspberrypi/linux/pull/4083\n> >\n> > The Raspberry Pi image must also be running the latest firmware,\n> > obtained by running rpi-update.\n> >\n> > Signed-off-by: Naushir Patuck <naush@raspberrypi.com>\n> > ---\n> >  include/linux/bcm2835-isp.h | 32 +++++++++++++++++++++++++++++---\n> >  1 file changed, 29 insertions(+), 3 deletions(-)\n> >\n> > diff --git a/include/linux/bcm2835-isp.h b/include/linux/bcm2835-isp.h\n> > index 45abb681517e..94c3af947883 100644\n> > --- a/include/linux/bcm2835-isp.h\n> > +++ b/include/linux/bcm2835-isp.h\n> > @@ -31,7 +31,8 @@\n> >                                 (V4L2_CID_USER_BCM2835_ISP_BASE + 0x0007)\n> >  #define V4L2_CID_USER_BCM2835_ISP_DPC          \\\n> >                                 (V4L2_CID_USER_BCM2835_ISP_BASE + 0x0008)\n> > -\n> > +#define V4L2_CID_USER_BCM2835_ISP_CDN \\\n> > +                               (V4L2_CID_USER_BCM2835_ISP_BASE + 0x0009)\n> >  /*\n> >   * All structs below are directly mapped onto the equivalent structs in\n> >   * drivers/staging/vc04_services/vchiq-mmal/mmal-parameters.h\n> > @@ -46,7 +47,7 @@\n> >   */\n> >  struct bcm2835_isp_rational {\n> >         __s32 num;\n> > -       __s32 den;\n> > +       __u32 den;\n>\n> Pickier people than myself might comment that this seems unrelated,\n> though I agree it looks sensible!\n>\n\nIn the commit message I mentioned that this is a port of the latest version\nof the uapi header for this very reason :-)  This includes all changes upto\nand including the new cdn definitions.  Hope folks won't find this\nconverversal.\n\nRegards,\nNaush\n\n\n\n>\n> >  };\n> >\n> >  /**\n> > @@ -140,7 +141,7 @@ struct bcm2835_isp_black_level {\n> >         __u16 black_level_r;\n> >         __u16 black_level_g;\n> >         __u16 black_level_b;\n> > -       __u8 pad_[2]; /* Unused */\n> > +       __u8 padding[2]; /* Unused */\n>\n> Ditto!\n>\n> Apart from these small things:\n>\n> Reviewed-by: David Plowman <david.plowman@raspberrypi.com>\n>\n> Thanks!\n> David\n>\n> >  };\n> >\n> >  /**\n> > @@ -175,6 +176,31 @@ struct bcm2835_isp_gamma {\n> >         __u16 y[BCM2835_NUM_GAMMA_PTS];\n> >  };\n> >\n> > +/**\n> > + * enum bcm2835_isp_cdn_mode - Mode of operation for colour denoise.\n> > + *\n> > +  * @CDN_MODE_FAST:            Fast (but lower quality) colour denoise\n> > + *                             algorithm, typically used for video\n> recording.\n> > + * @CDN_HIGH_QUALITY:          High quality (but slower) colour denoise\n> > + *                             algorithm, typically used for stills\n> capture.\n> > + */\n> > +enum bcm2835_isp_cdn_mode {\n> > +       CDN_MODE_FAST = 0,\n> > +       CDN_MODE_HIGH_QUALITY = 1,\n> > +};\n> > +\n> > +/**\n> > + * struct bcm2835_isp_cdn - Colour denoise parameters set with the\n> > + *                         V4L2_CID_USER_BCM2835_ISP_CDN ctrl.\n> > + *\n> > + * @enabled:   Enable colour denoise.\n> > + * @cdn_mode:  Colour denoise operating mode (see enum\n> &bcm2835_isp_cdn_mode)\n> > + */\n> > +struct bcm2835_isp_cdn {\n> > +       __u32 enabled;\n> > +       __u32 mode;\n> > +};\n> > +\n> >  /**\n> >   * struct bcm2835_isp_denoise - Denoise parameters set with the\n> >   *                             V4L2_CID_USER_BCM2835_ISP_DENOISE ctrl.\n> > --\n> > 2.25.1\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 0FF06BD808\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed, 20 Jan 2021 10:04:23 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 89E426818D;\n\tWed, 20 Jan 2021 11:04:22 +0100 (CET)","from mail-lf1-x12e.google.com (mail-lf1-x12e.google.com\n\t[IPv6:2a00:1450:4864:20::12e])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id CD06B6817D\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 20 Jan 2021 11:04:20 +0100 (CET)","by mail-lf1-x12e.google.com with SMTP id v24so26706716lfr.7\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 20 Jan 2021 02:04:20 -0800 (PST)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=raspberrypi.com header.i=@raspberrypi.com\n\theader.b=\"sgbOijBy\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=raspberrypi.com; s=google;\n\th=mime-version:references:in-reply-to:from:date:message-id:subject:to\n\t:cc; bh=kwt81kidJ8r6QD4FZYyPptvOSpKshfTClPx/RvBLy+M=;\n\tb=sgbOijByEQSOCbyhwBCZrkTu/dtNw3pqfwKYXLgRD7gC3xgHqHpHKWuwOX2FzuDsrE\n\teDkpQu+C2FXv3VGAZConk54clVu7Ho+uiLOcrzgZGdFugn19fa6eKl2TeGl3jo/3WR+P\n\tDgFUM9MhJMQXAxbkImfbg1jqNb/p4bzB+rOmM+3ZF7nyTEWfTbqLKbK4TA/4NglK3ehg\n\tvn+gSfLP8d5V+eeo9HZLv/QEA2UKjHaJGWC8vZU6UQnvga1ChFH+VIQ/cjGdMyC56naK\n\tPlz2MTE/BerYcOAy+ir35KCz447SiKJ5F7x+GH0wVr9M9DEUG3dEzMo9IUktTKvbPj5p\n\tqBxA==","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=kwt81kidJ8r6QD4FZYyPptvOSpKshfTClPx/RvBLy+M=;\n\tb=CzFMFsPiStmZ69g+cNP1hVHo84jMaxatiunpE2+gmQhSm5ztOxKQGz1HyjpNq8z7jC\n\tpDbk+M58a3QGyHkN+1ztKoKdJlqrKYv+sSMLqddtvDLBe2ndGHuVJ1X4S/Fe1Lmilpuq\n\twVWVNbzuDj47ieF5JkduFsgi5ORkNELGYjzCRCcr9KgKVHsEd+OLOqtxKraERBExftQH\n\teyuFL8FdNuIwOI8ZrVF6cuc+5fl/iQGbKrD488PHmGQfpAg5fI58mAbQ7nm6O3KFUdhs\n\tZhCXJ2Wm8Yyeixt4pVq8fH5enKYspfyLAeh9GYXOVR7enTx2krP9NILqVAbTacBsDC7I\n\tVYGQ==","X-Gm-Message-State":"AOAM532tAnEHwhwTuHLVWVJA+2Fe5Wj6+vxWmVZZU1rVX+xRdFDZvkrf\n\t4ZNikTGg1TjDdOuQ90nMs+Iezmmi2T+qaGWJzuE8cg==","X-Google-Smtp-Source":"ABdhPJzvIqX5ziXpEsuGd3qIHso9pxlslY7t+xa68pZN3gGcYXRb3kKFwK1ulBJ6NZ1nlNWx00O7rsGIrVNlk1iV3KI=","X-Received":"by 2002:ac2:559a:: with SMTP id v26mr399967lfg.133.1611137060244;\n\tWed, 20 Jan 2021 02:04:20 -0800 (PST)","MIME-Version":"1.0","References":"<20210120083449.642418-1-naush@raspberrypi.com>\n\t<20210120083449.642418-4-naush@raspberrypi.com>\n\t<CAHW6GYKpZ_3Mto4u22vM+NNrFPK28A7ccpn0BRaQ7+=KuRtjTQ@mail.gmail.com>","In-Reply-To":"<CAHW6GYKpZ_3Mto4u22vM+NNrFPK28A7ccpn0BRaQ7+=KuRtjTQ@mail.gmail.com>","From":"Naushir Patuck <naush@raspberrypi.com>","Date":"Wed, 20 Jan 2021 10:04:04 +0000","Message-ID":"<CAEmqJPreeey31uhMZ_HHcgoRJC2HnVNeE51VD88hRUgVJvmfUg@mail.gmail.com>","To":"David Plowman <david.plowman@raspberrypi.com>","Subject":"Re: [libcamera-devel] [PATCH 3/5] uapi: raspberrypi: Update the\n\tbcm2835-isp header definition","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=\"===============4128771560911414464==\"","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":14639,"web_url":"https://patchwork.libcamera.org/comment/14639/","msgid":"<d78b25a3-4a65-f66f-8c0a-7b4416d43ab4@ideasonboard.com>","date":"2021-01-20T15:22:41","subject":"Re: [libcamera-devel] [PATCH 3/5] uapi: raspberrypi: Update the\n\tbcm2835-isp header definition","submitter":{"id":4,"url":"https://patchwork.libcamera.org/api/people/4/","name":"Kieran Bingham","email":"kieran.bingham@ideasonboard.com"},"content":"Hi David, Naush,\n\nOn 20/01/2021 10:04, Naushir Patuck wrote:\n> Hi David,\n> \n> Thank you for your review feedback.\n> \n> On Wed, 20 Jan 2021 at 10:00, David Plowman\n> <david.plowman@raspberrypi.com <mailto:david.plowman@raspberrypi.com>>\n> wrote:\n> \n>     Hi Naush\n> \n>     Thanks for this patch.\n> \n>     On Wed, 20 Jan 2021 at 08:35, Naushir Patuck <naush@raspberrypi.com\n>     <mailto:naush@raspberrypi.com>> wrote:\n>     >\n>     > Update the bcm2835-isp.h file with the latest version available in the\n>     > downstream Raspberryp Pi linux repo.\n\ns/Raspberryp/Raspberry/\n\n>     >\n>     > This change adds support for colour denoise processing, and the\n>     > following downstream kernel changes must be available:\n>     > https://github.com/raspberrypi/linux/pull/4069\n>     > https://github.com/raspberrypi/linux/pull/4083\n>     >\n>     > The Raspberry Pi image must also be running the latest firmware,\n>     > obtained by running rpi-update.\n>     >\n>     > Signed-off-by: Naushir Patuck <naush@raspberrypi.com\n>     <mailto:naush@raspberrypi.com>>\n>     > ---\n>     >  include/linux/bcm2835-isp.h | 32 +++++++++++++++++++++++++++++---\n>     >  1 file changed, 29 insertions(+), 3 deletions(-)\n>     >\n>     > diff --git a/include/linux/bcm2835-isp.h b/include/linux/bcm2835-isp.h\n>     > index 45abb681517e..94c3af947883 100644\n>     > --- a/include/linux/bcm2835-isp.h\n>     > +++ b/include/linux/bcm2835-isp.h\n>     > @@ -31,7 +31,8 @@\n>     >                                 (V4L2_CID_USER_BCM2835_ISP_BASE +\n>     0x0007)\n>     >  #define V4L2_CID_USER_BCM2835_ISP_DPC          \\\n>     >                                 (V4L2_CID_USER_BCM2835_ISP_BASE +\n>     0x0008)\n>     > -\n>     > +#define V4L2_CID_USER_BCM2835_ISP_CDN \\\n>     > +                               (V4L2_CID_USER_BCM2835_ISP_BASE +\n>     0x0009)\n>     >  /*\n>     >   * All structs below are directly mapped onto the equivalent\n>     structs in\n>     >   * drivers/staging/vc04_services/vchiq-mmal/mmal-parameters.h\n>     > @@ -46,7 +47,7 @@\n>     >   */\n>     >  struct bcm2835_isp_rational {\n>     >         __s32 num;\n>     > -       __s32 den;\n>     > +       __u32 den;\n> \n>     Pickier people than myself might comment that this seems unrelated,\n>     though I agree it looks sensible!\n> \n> \n> In the commit message I mentioned that this is a port of the latest\n> version of the uapi header for this very reason :-)  This includes all\n> changes upto and including the new cdn definitions.  Hope folks won't\n> find this converversal.\n> \n\nNo problem, this is fine.\n\nWe have to import kernel headers to be able to ensure we have compile\ncompatibility.\n\nThe import of those headers is a single action, and as long as it\nmatches the expectations of the kernel that's fine.\n\nIgnore any checkstyle warnings under include/linux/ too. They should be\ndirect, unmodified imports.\n\nI've got a local patch to ignore imported code that I've toyed with for\ncheckstyle.py... Now I just need time to make it clean.\n\nAcked-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n\n> Regards,\n> Naush\n> \n>  \n> \n> \n>     >  };\n>     >\n>     >  /**\n>     > @@ -140,7 +141,7 @@ struct bcm2835_isp_black_level {\n>     >         __u16 black_level_r;\n>     >         __u16 black_level_g;\n>     >         __u16 black_level_b;\n>     > -       __u8 pad_[2]; /* Unused */\n>     > +       __u8 padding[2]; /* Unused */\n> \n>     Ditto!\n> \n>     Apart from these small things:\n> \n>     Reviewed-by: David Plowman <david.plowman@raspberrypi.com\n>     <mailto:david.plowman@raspberrypi.com>>\n> \n>     Thanks!\n>     David\n> \n>     >  };\n>     >\n>     >  /**\n>     > @@ -175,6 +176,31 @@ struct bcm2835_isp_gamma {\n>     >         __u16 y[BCM2835_NUM_GAMMA_PTS];\n>     >  };\n>     >\n>     > +/**\n>     > + * enum bcm2835_isp_cdn_mode - Mode of operation for colour denoise.\n>     > + *\n>     > +  * @CDN_MODE_FAST:            Fast (but lower quality) colour\n>     denoise\n>     > + *                             algorithm, typically used for\n>     video recording.\n>     > + * @CDN_HIGH_QUALITY:          High quality (but slower) colour\n>     denoise\n>     > + *                             algorithm, typically used for\n>     stills capture.\n>     > + */\n>     > +enum bcm2835_isp_cdn_mode {\n>     > +       CDN_MODE_FAST = 0,\n>     > +       CDN_MODE_HIGH_QUALITY = 1,\n>     > +};\n>     > +\n>     > +/**\n>     > + * struct bcm2835_isp_cdn - Colour denoise parameters set with the\n>     > + *                         V4L2_CID_USER_BCM2835_ISP_CDN ctrl.\n>     > + *\n>     > + * @enabled:   Enable colour denoise.\n>     > + * @cdn_mode:  Colour denoise operating mode (see enum\n>     &bcm2835_isp_cdn_mode)\n>     > + */\n>     > +struct bcm2835_isp_cdn {\n>     > +       __u32 enabled;\n>     > +       __u32 mode;\n>     > +};\n>     > +\n>     >  /**\n>     >   * struct bcm2835_isp_denoise - Denoise parameters set with the\n>     >   *                             V4L2_CID_USER_BCM2835_ISP_DENOISE\n>     ctrl.\n>     > --\n>     > 2.25.1\n>     >\n>     > _______________________________________________\n>     > libcamera-devel mailing list\n>     > libcamera-devel@lists.libcamera.org\n>     <mailto:libcamera-devel@lists.libcamera.org>\n>     > https://lists.libcamera.org/listinfo/libcamera-devel\n> \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 AB99EC0F2A\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed, 20 Jan 2021 15:22:45 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 1B82968195;\n\tWed, 20 Jan 2021 16:22:45 +0100 (CET)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 86BFA68180\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 20 Jan 2021 16:22:44 +0100 (CET)","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 EA477813;\n\tWed, 20 Jan 2021 16:22:43 +0100 (CET)"],"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=\"WdiPtXl5\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1611156164;\n\tbh=rO9n/I04tYBDb8UZsiQktPEAj7Gyb8t+Z/Bznfk1LYM=;\n\th=Reply-To:Subject:To:Cc:References:From:Date:In-Reply-To:From;\n\tb=WdiPtXl5SqiZzQkUzU8xP8QX6tWzih9DmPs5LpOSACz4QemD91EZ/21eo36mEtXQn\n\tOMH/rOHd5nMFRaVBDO1eYRwFKV61oJRUVHJSzhSVB77a7trJNupTJY0kdQaWMxkDrT\n\tKYzxx3cVX4qlHtQPIjlTEkeOthg0Fqg6N6fJuQ6k=","To":"Naushir Patuck <naush@raspberrypi.com>,\n\tDavid Plowman <david.plowman@raspberrypi.com>","References":"<20210120083449.642418-1-naush@raspberrypi.com>\n\t<20210120083449.642418-4-naush@raspberrypi.com>\n\t<CAHW6GYKpZ_3Mto4u22vM+NNrFPK28A7ccpn0BRaQ7+=KuRtjTQ@mail.gmail.com>\n\t<CAEmqJPreeey31uhMZ_HHcgoRJC2HnVNeE51VD88hRUgVJvmfUg@mail.gmail.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":"<d78b25a3-4a65-f66f-8c0a-7b4416d43ab4@ideasonboard.com>","Date":"Wed, 20 Jan 2021 15:22:41 +0000","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":"<CAEmqJPreeey31uhMZ_HHcgoRJC2HnVNeE51VD88hRUgVJvmfUg@mail.gmail.com>","Content-Language":"en-GB","Subject":"Re: [libcamera-devel] [PATCH 3/5] uapi: raspberrypi: Update the\n\tbcm2835-isp header definition","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 <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>"}}]