From patchwork Thu Jul 21 12:13:01 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kieran Bingham X-Patchwork-Id: 16715 X-Patchwork-Delegate: kieran.bingham@ideasonboard.com 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 F3D5FBD1F1 for ; Thu, 21 Jul 2022 12:13:22 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 65BAB63322; Thu, 21 Jul 2022 14:13:20 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org; s=mail; t=1658405600; bh=ixIcOvCneuW7zcPdTSGPoMyws/19Hw9cd4rAQBHTbD8=; h=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=b9IBjbUAmRa9ZZ8VvH6MdJ4ZXtcPamD1HOkiHUPxGd+h6Gx1ihHCXsKQM2vkZOCOw 2OeBt7gnh0xjZ9rER9VTzaz7/fuyJp1YT1Wkp0YbMsJAR7BI5odTXATxwfsDzx2Qd5 WDuToG0PkHJqjDd2CVWihjVWi/dv0lNhHmwuQz+WzRCL7Y/An9BWqtX5IR1dske+MO BtKhZPH3Td0f16zUCYRX0SZhmx7xxw97fdpkDi66zNjmr3LY/PaY9vwm3AmxRGVaSW dvKXyAosIU66Qr9h7G6IrKd5/Wi+yJaHaEk1TWJRgusZRWMzT8/VaoWrgpVQ4CMfo0 lMQ5xexoUdl9g== Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 56F2D6330F for ; Thu, 21 Jul 2022 14:13:14 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (1024-bit key; unprotected) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="WjvbgqFe"; dkim-atps=neutral Received: from Monstersaurus.local (cpc89244-aztw30-2-0-cust3082.18-1.cable.virginm.net [86.31.172.11]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 0683A825; Thu, 21 Jul 2022 14:13:13 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1658405594; bh=ixIcOvCneuW7zcPdTSGPoMyws/19Hw9cd4rAQBHTbD8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=WjvbgqFeVLtpMlyECEZX6GgBwpnK1Ql00aQtC8mJEV9hHpwEC6QrXAtzd5lzCyGD9 tMXobYIysz8okWaQBTacyUEDNBtUrr6pLma1IgSF9b8FW9uVcbs1qvv+aNjtUcPPhv bmgCpI0IubtFRN/L9hiVo+DllxFz12WgxmkXdC34= To: libcamera devel Date: Thu, 21 Jul 2022 13:13:01 +0100 Message-Id: <20220721121310.1286862-4-kieran.bingham@ideasonboard.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220721121310.1286862-1-kieran.bingham@ideasonboard.com> References: <20220721121310.1286862-1-kieran.bingham@ideasonboard.com> MIME-Version: 1.0 Subject: [libcamera-devel] [RFC PATCH 03/12] libcamera: request: Add PFCError flag 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: Kieran Bingham via libcamera-devel From: Kieran Bingham Reply-To: Kieran Bingham Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" Provide a new flag for the Request error state to indicate that a per-frame control error has occurred. One or more controls set for this request could not be guaranteed on this frame. Signed-off-by: Kieran Bingham --- include/libcamera/request.h | 1 + src/libcamera/request.cpp | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/include/libcamera/request.h b/include/libcamera/request.h index 992629e11aa4..d6d9f0d214dc 100644 --- a/include/libcamera/request.h +++ b/include/libcamera/request.h @@ -47,6 +47,7 @@ public: enum ErrorFlag { NoError = 0, ControlError = (1 << 0), + PFCError = (1 << 1), }; using ErrorFlags = Flags; diff --git a/src/libcamera/request.cpp b/src/libcamera/request.cpp index 8b82757ea7e3..509ed4ca6ed5 100644 --- a/src/libcamera/request.cpp +++ b/src/libcamera/request.cpp @@ -339,10 +339,15 @@ void Request::Private::timeout() * Flags to report non-fatal errors * \var Request::NoError * No error + * * \var Request::ControlError * Control Error. At least on control was not able to be applied to the device. * The application should compare the metadata to the requested control values * to check which controls weren't applied. + * + * \var Request::PFCError + * A per-frame-control error has occured. Controls that were expected to be set + * during the processing of this request were not processed in time. */ /**