From patchwork Wed Nov 23 13:43:42 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jacopo Mondi X-Patchwork-Id: 17846 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 57FC6BE08B for ; Wed, 23 Nov 2022 13:43:55 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 02E4B6331A; Wed, 23 Nov 2022 14:43:55 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org; s=mail; t=1669211035; bh=iRrim9+teyWTJh/z/rf10JrcAOEpuorjlleJ4CQ5Apw=; h=To:Date:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:Cc:From; b=t9qIUiE5UG7gZT+QEJEOWueOTEtL4UY7x/kGb9MMUP8ps81c4ZqOxWzFXOp9N64+D 9aErC/wuphxI5EZa3ex+HBLlKatL0iZp2qGou2HUMydRdOusIEvhmyUYQSpNzmCLC+ K2cnTuoNCBYO96GWnJiwGj+DflGb3LrCbjauNyAzpkQWhtXXIYCFebzCPkEDYC/fy1 PC8TEy0Wymqo2gpUJE1yDvnBN2oAbSHFB1afcQ+OD98HnZZ1wiDtxGPvsPznBQBTKv KPYTdr50OV/0uVIb8zmQPvwqiKJw/zMxBGpVM0F3OGhwifCC0XNrYsUTEVdOdT9+wJ rQo+tBYMFslyQ== Received: from relay4-d.mail.gandi.net (relay4-d.mail.gandi.net [IPv6:2001:4b98:dc4:8::224]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id B0B7463311 for ; Wed, 23 Nov 2022 14:43:53 +0100 (CET) Received: (Authenticated sender: jacopo@jmondi.org) by mail.gandi.net (Postfix) with ESMTPSA id AC91EE0009; Wed, 23 Nov 2022 13:43:51 +0000 (UTC) To: libcamera-devel@lists.libcamera.org Date: Wed, 23 Nov 2022 14:43:42 +0100 Message-Id: <20221123134346.129807-1-jacopo@jmondi.org> X-Mailer: git-send-email 2.38.1 MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH v2 0/4] ipa: Validate controls in CameraSensor 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: Jacopo Mondi via libcamera-devel From: Jacopo Mondi Reply-To: Jacopo Mondi Cc: Nicholas Roth Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" The CameraSensor class validates that the sensor driver in use supports the controls required for IPA modules to work correctly. For in-tree IPA modules, whose pipeline handlers already use CameraSensor there's no need to validate such controls again. Move controls validation to the CameraSensor class and align the two IPA implementations On top of the first patch two drive-by cleanups for the RkISP1 and on top I've collected Nicholas' patch that register FrameDurationLimits for the RkISP1 platform. Tested on imx8mp with the RkISP1 IPA v1->v2: - rebase and collect tags - Move error message from RkISP1::configure() to RkISP1::init() in 4/4 Jacopo Mondi (3): libcamera: Move IPA sensor controls validation to CameraSensor ipa: rkisp1: Use IPAConfig in IPA::configure() ipa: rkisp1: Fail hard on empty CameraSensorInfo Nicholas Roth (1): ipa: rkisp1: add FrameDurationLimits control Documentation/sensor_driver_requirements.rst | 7 ++ include/libcamera/ipa/rkisp1.mojom | 16 ++-- src/ipa/ipu3/ipu3.cpp | 29 ------- src/ipa/rkisp1/rkisp1.cpp | 91 +++++++++++++------- src/libcamera/camera_sensor.cpp | 1 + src/libcamera/pipeline/rkisp1/rkisp1.cpp | 28 +++--- 6 files changed, 94 insertions(+), 78 deletions(-) --- 2.38.1