From patchwork Tue Mar 22 02:41:51 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kate Hsuan X-Patchwork-Id: 15492 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 8A89EC0F1B for ; Tue, 22 Mar 2022 02:42:12 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 9ED83604DC; Tue, 22 Mar 2022 03:42:11 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org; s=mail; t=1647916931; bh=VcUwIH3twZm+pHH4DkZAQvhTBozAzb1xUSgjMgSPazg=; h=To:Date:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:From; b=cZ2dTsMzD1vJe5T6KVQu75Sp+FOa/5iJ1Sa5EG4crW5rLiI4XJ3bACC5YfeFhxb/x t2baPe0P0f78ez6sfwuNlvj7MYyexue4WjuWqJAb9xx3SVez84KpkwaXr5LioVt582 3rjvZbrrjXuRNMwNZpiwa25koSugE1EGFVutn+M9bQ8mvpRKPANE38crIfOCdLyttW XHCOsFBLXe0fPC4+VcqqYoDGPvfpqypKdVRvHFnl1pUYVZpMMTJ35yhLVFcpLyxzj8 tYsq6Uqu6hVtcc8f8wzy9JEQiY8lW9oCg8YwP/T/d/QBGzXST4LsVOkJr5VY85VqNG 0yQE9v6xrUKdw== Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id B966D604C7 for ; Tue, 22 Mar 2022 03:42:09 +0100 (CET) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (1024-bit key; unprotected) header.d=redhat.com header.i=@redhat.com header.b="aTVG2zIT"; dkim-atps=neutral DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1647916928; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+QEJy8NrSSOUbazK2PFVFe9Ir6iPnXNMaYQ+Axa5AbM=; b=aTVG2zITKfTVDLnslMIy44+WPZ/CDdsYZj8Ps0BLd8S1ZCeU9SkDiohP7oPumO0AM5PXDG JeKDqWuDsVnnwQVGa38f+n/cxtyllHHY1r8yatsbQviRpBdQgN6rmSXqo/cmjbawLFk9hK NO39Mf+lix1vfjVB3NwsFSdLklaqKl4= Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-255-KX-IAZ0eMbCddjn3fRo1IA-1; Mon, 21 Mar 2022 22:42:07 -0400 X-MC-Unique: KX-IAZ0eMbCddjn3fRo1IA-1 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.rdu2.redhat.com [10.11.54.8]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 0880A811E75 for ; Tue, 22 Mar 2022 02:42:07 +0000 (UTC) Received: from fedora.redhat.com (unknown [10.39.192.3]) by smtp.corp.redhat.com (Postfix) with ESMTP id 5E62AC26E9D; Tue, 22 Mar 2022 02:42:04 +0000 (UTC) To: libcamera devel Date: Tue, 22 Mar 2022 10:41:51 +0800 Message-Id: <20220322024155.6528-1-hpa@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.85 on 10.11.54.8 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=hpa@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Subject: [libcamera-devel] [PATCH 0/4] ipa: ipu3: af: Temporarily suspend AWB and AE during AF scanning 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: , X-Patchwork-Original-From: Kate Hsuan via libcamera-devel From: Kate Hsuan Reply-To: Kate Hsuan Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" The floating results of AWB and AE significantly impact the AF performance and the AF scene variance estimation. If the exposure value and color settings are changed by the algorithm, the AF scene variance will be affected and the algorithm may find an incorrect local maximum value. Consequently, a wrong lens position is determined and we could only get a blurred image. This patch proposed an AWB and AE suspension mechanism while AF is searching for the focus. A lock flag is used to identify that AWB and AE should be suspended or not. AGC and AE algorithm test the flag and determine that they have to perform the algorithm or suspend itself. Kate Hsuan (4): ipa: ipu3: af: Introduce AWB and AE lock when AF scanning ipa: ipu3: af: AE and AWE lock request flow when performing AF ipa: ipu3: awb: AWB lock for AF scan ipa: ipu3: agc: AE lock for AF scanning src/ipa/ipu3/algorithms/af.cpp | 25 +++++++++++++++++++++++++ src/ipa/ipu3/algorithms/af.h | 2 ++ src/ipa/ipu3/algorithms/agc.cpp | 14 ++++++++++++++ src/ipa/ipu3/algorithms/agc.h | 1 + src/ipa/ipu3/algorithms/awb.cpp | 13 +++++++++++++ src/ipa/ipu3/algorithms/awb.h | 1 + src/ipa/ipu3/ipa_context.h | 1 + 7 files changed, 57 insertions(+)