From patchwork Fri Jan 22 09:25:31 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Naushir Patuck X-Patchwork-Id: 10944 Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id 9BD5DBD808 for ; Fri, 22 Jan 2021 09:25:45 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id F362C68235; Fri, 22 Jan 2021 10:25:44 +0100 (CET) Authentication-Results: lancelot.ideasonboard.com; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=raspberrypi.com header.i=@raspberrypi.com header.b="QPb/ws0L"; dkim-atps=neutral Received: from mail-wr1-x436.google.com (mail-wr1-x436.google.com [IPv6:2a00:1450:4864:20::436]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 099F36822E for ; Fri, 22 Jan 2021 10:25:43 +0100 (CET) Received: by mail-wr1-x436.google.com with SMTP id c12so4380116wrc.7 for ; Fri, 22 Jan 2021 01:25:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raspberrypi.com; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=m61hNY8PhJnSRsg+Rcpae/jsrF+Ev4uLaOh/zPHK83k=; b=QPb/ws0LXltHv26hLVgV7a+7CFEh+ujosBsQ7Sfse1hsVBvsUmBSVm3ewa9ZgnESXO x/2NWw3aj7+8U0nUkdhCVyhFUOAIzReuAVrcyzkX0byZAl/OrWeLg9ISEvDnZikTEIq8 X7aRrlYVimL1FZte7SY8hlE6fb0q3YLoIhAZ6iaLKFNyGbR3OCkK07qX3ujRQpWt9erb nTh7Q1IMAK7SXCqlVfu/9nWfAYiLJYqe1lcyaW00T8V8MvujjKUo+41ub2tSBkzgrRRV x7zQnan6k1vs8dZavc03UCFUkUXKWwWz0QcbqouzJhfphpM0dmZBqOf4qDibu5KkP5lk c5JQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=m61hNY8PhJnSRsg+Rcpae/jsrF+Ev4uLaOh/zPHK83k=; b=AEds2BMOx2P9JMJeBvDSuoFoytFRWksrpXStWgqDSSPOJpoW30IvV/pi4wiPKzp1QV JmKvCF66F5ImJ271PohhmJbFNlvOyftXXEZCMi2GJohCX05XWr6QIzPZ6QLoCUiOn4oq JAJ4GeMNHh3mHUkASy3rFki2udkXQX+F9uW+15WfCANL+LKruL/iUOCXufIEQSpYljUL 8xr4PLPGQw/oQ3tsQ6CI7UpK+qrAqE6WnyPcO/n+IyAxkX9RGyIlazLmMgd23eLfBp94 3GxznrJk+jRZwLJ2sIi2mTZWeboFc3Y13HeBfN2nWVivTtjReXLxY1qzCn9SNR3FvOgJ Lg0w== X-Gm-Message-State: AOAM532JytTGKLbZGANSoFSeWK20aMapq/MNhCza6pUGIQTYOhJXcweb DL1iGUDgaKdXzYmNMd0Y4/ljrLEarEJgvA== X-Google-Smtp-Source: ABdhPJye6uHPuyk/dueIKEvE2Cy7sMCG2Uu4Zx5uxecHiYkJeI4wRRLxSxONmCxjo620NuOfBhUaog== X-Received: by 2002:adf:ce90:: with SMTP id r16mr3603529wrn.100.1611307542435; Fri, 22 Jan 2021 01:25:42 -0800 (PST) Received: from naushir-VirtualBox.patuck.local ([88.97.76.4]) by smtp.gmail.com with ESMTPSA id h15sm10664801wru.4.2021.01.22.01.25.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 22 Jan 2021 01:25:41 -0800 (PST) From: Naushir Patuck To: libcamera-devel@lists.libcamera.org Date: Fri, 22 Jan 2021 09:25:31 +0000 Message-Id: <20210122092537.708375-1-naush@raspberrypi.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH v2 0/6] Raspberry Pi: Colour denoise X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" Hi, This is v2 of the patchset that adds colour denoise support to the Raspberry Pi pipeline handler and IPA. The differences from v1 are: 1) In patch 2/6, we simplify the 1/4 resolution calculation using the existing methods in the Size class. 2) Patch 4/6 is a new commit that renames SdnStatus to DenoiseStatus to reflect us now using a DenoiseAlgorithm base class. 3) In patches 5/6 and 6/6 we expand the DenoiseMode enum to allow us to selectively switch off SDN and CDN. Many thanks, Naush Naushir Patuck (6): pipeline: raspberrypi: Refactor stream configuration routine pipeline: raspberrypi: Set the ISP Output1 to 1/4 resolution if unused uapi: raspberrypi: Update the bcm2835-isp header definition ipa: raspberrypi: Rename SdnStatus to DenoiseStatus ipa: raspberrypi: Add a DenoiseAlgorithm class to the Controller ipa: raspberrypi: Handle control::NoiseReductionMode in the controller include/linux/bcm2835-isp.h | 32 ++++++- .../controller/denoise_algorithm.hpp | 23 +++++ .../{sdn_status.h => denoise_status.h} | 7 +- src/ipa/raspberrypi/controller/rpi/sdn.cpp | 17 ++-- src/ipa/raspberrypi/controller/rpi/sdn.hpp | 5 +- src/ipa/raspberrypi/raspberrypi.cpp | 55 ++++++++++-- .../pipeline/raspberrypi/raspberrypi.cpp | 87 ++++++++++--------- 7 files changed, 168 insertions(+), 58 deletions(-) create mode 100644 src/ipa/raspberrypi/controller/denoise_algorithm.hpp rename src/ipa/raspberrypi/controller/{sdn_status.h => denoise_status.h} (62%)