From patchwork Fri Oct 1 10:33:18 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paul Elder X-Patchwork-Id: 14015 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 02779BDC71 for ; Fri, 1 Oct 2021 10:33:39 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 77046691A6; Fri, 1 Oct 2021 12:33:39 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="c4hmHVE3"; dkim-atps=neutral Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 56ECC691A6 for ; Fri, 1 Oct 2021 12:33:37 +0200 (CEST) Received: from pyrite.rasen.tech (unknown [IPv6:2400:4051:61:600:2c71:1b79:d06d:5032]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id BDEE7596; Fri, 1 Oct 2021 12:33:35 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1633084417; bh=0qrLd3lqtnxP4w6mHI7d6XM76vhP8mYKSw9Lfa8yUjw=; h=From:To:Cc:Subject:Date:From; b=c4hmHVE34WAJT92ojrmHL566bVOeU3zDNvsa2VTooVIq3a4YYul4zui9xYJQX38sz nsjCSlif+HHykwLI5ReYEGOy8I/vuh7cVeGDUlGtMqTTXK/UJhl5bo/NW5OPW5Cn8C NZiQMbmkgkBI8YOX8IFbaaAQyxO0JcTT5QVByHy0= From: Paul Elder To: libcamera-devel@lists.libcamera.org Date: Fri, 1 Oct 2021 19:33:18 +0900 Message-Id: <20211001103325.1077590-1-paul.elder@ideasonboard.com> X-Mailer: git-send-email 2.27.0 MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH v2 0/7] The Great AE Changes 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" This patch series aims to solve all our AE problems. The most important patches are 1/7, 6/7, and 7/7. 1/7 defines the new AE controls, and replaces the old ones. This will not compile without 2/7 to 5/7. 1/7 did not have any reviews so I'm putting it in this series. 6/7 plumbs the AE controls through the HAL layer. It is fairly large and complex. 7/7 plumbs the sensitivity-related controls, which are also related to the AE controls, which is why it is included in this series. It also did not have any reviews, so it's being grouped with this series. These have yet to be tested against CTS, but the theory should be correct. Paul Elder (7): controls: Reorganize the AE-related controls libcamera: pipeline: uvcvideo: Support the new AE controls libcamera: pipeline: raspberrypi: Support the new AE controls test: ipa_data_serializer: Remove controls::AeEnable libcamera: pipeline: rkisp1: Support the new AE controls android: Plumb all AE-related controls android: Plumb all sensitivity-related controls include/libcamera/ipa/raspberrypi.h | 3 +- src/android/camera_capabilities.cpp | 124 ++++++++-- src/android/camera_capabilities.h | 3 +- src/android/camera_device.cpp | 174 +++++++++++++- src/android/camera_device.h | 17 ++ src/android/camera_hal_config.cpp | 10 +- src/android/camera_hal_config.h | 1 + src/ipa/raspberrypi/controller/rpi/agc.cpp | 18 +- src/ipa/raspberrypi/controller/rpi/agc.hpp | 5 + src/ipa/raspberrypi/raspberrypi.cpp | 42 +++- src/ipa/rkisp1/rkisp1.cpp | 18 +- src/libcamera/control_ids.yaml | 215 ++++++++++++------ src/libcamera/pipeline/rkisp1/rkisp1.cpp | 4 +- src/libcamera/pipeline/uvcvideo/uvcvideo.cpp | 36 ++- .../ipa_data_serializer_test.cpp | 1 - 15 files changed, 559 insertions(+), 112 deletions(-)