{"id":21763,"url":"https://patchwork.libcamera.org/api/patches/21763/?format=json","web_url":"https://patchwork.libcamera.org/patch/21763/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/projects/1/?format=json","name":"libcamera","link_name":"libcamera","list_id":"libcamera_core","list_email":"libcamera-devel@lists.libcamera.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20241028173659.247353-2-mike.rudenko@gmail.com>","date":"2024-10-28T17:36:57","name":"[RFC,1/3] ipa: core: add IPASensorDelays structure","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"f27344e375087c5780908304f3b77dcf6ebe8e29","submitter":{"id":146,"url":"https://patchwork.libcamera.org/api/people/146/?format=json","name":"Mikhail Rudenko","email":"mike.rudenko@gmail.com"},"delegate":null,"mbox":"https://patchwork.libcamera.org/patch/21763/mbox/","series":[{"id":4750,"url":"https://patchwork.libcamera.org/api/series/4750/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=4750","date":"2024-10-28T17:36:56","name":"Pass sensor delays from rkisp1 IPA to the pipeline handler","version":1,"mbox":"https://patchwork.libcamera.org/series/4750/mbox/"}],"comments":"https://patchwork.libcamera.org/api/patches/21763/comments/","check":"pending","checks":"https://patchwork.libcamera.org/api/patches/21763/checks/","tags":{},"headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id DCAFFC32B5\n\tfor <parsemail@patchwork.libcamera.org>;\n\tMon, 28 Oct 2024 17:37:14 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 72D5860367;\n\tMon, 28 Oct 2024 18:37:12 +0100 (CET)","from mail-lf1-x12b.google.com (mail-lf1-x12b.google.com\n\t[IPv6:2a00:1450:4864:20::12b])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 8017860367\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 28 Oct 2024 18:37:10 +0100 (CET)","by mail-lf1-x12b.google.com with SMTP id\n\t2adb3069b0e04-539fe02c386so5175746e87.0\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 28 Oct 2024 10:37:10 -0700 (PDT)","from localhost.localdomain ([45.12.135.46])\n\tby smtp.gmail.com with ESMTPSA id\n\t38308e7fff4ca-2fcb453e3afsm12115511fa.57.2024.10.28.10.37.07\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tMon, 28 Oct 2024 10:37:07 -0700 (PDT)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (2048-bit key;\n\tunprotected) header.d=gmail.com header.i=@gmail.com\n\theader.b=\"ns7bJbeY\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=gmail.com; s=20230601; t=1730137029; x=1730741829;\n\tdarn=lists.libcamera.org; \n\th=content-transfer-encoding:mime-version:references:in-reply-to\n\t:message-id:date:subject:cc:to:from:from:to:cc:subject:date\n\t:message-id:reply-to;\n\tbh=DiNR0C7VTDxS5e/TYC9jAVgTnLyfxZg5d9xwmdf6V28=;\n\tb=ns7bJbeYNp9Y1rtQjbLlIOXAHWWVWUbP5Jrs+R2E93RKEGgd5Dif8hPVazIfSF8zVq\n\tR77DiWbGmAovIbdS2GIpp0/LpqdQDF24tlyJftvCV/XFhU/r86/1d1O/PAsayNEv8N0N\n\tZfKaDIFEO89UzhZPCF9c5YUXe3aJYYHFxpSTjUsnYxYWOz6EchEMULE4EdU2qFPXlrFD\n\tDQZpVInZ6mEefMOPm3zdD2ckBY8atb9faPoA/z3Zqe/XLJL1r7CK0PwIIBsTgttotU7q\n\thwK7K3+13xaNlrZ7iPJL/2QJjU/bcrqHl8fqGpUno/eYh+XLVEQbax7MIFJ4QVtxyQkv\n\tnWzw==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20230601; t=1730137029; x=1730741829;\n\th=content-transfer-encoding:mime-version:references:in-reply-to\n\t:message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc\n\t:subject:date:message-id:reply-to;\n\tbh=DiNR0C7VTDxS5e/TYC9jAVgTnLyfxZg5d9xwmdf6V28=;\n\tb=pDdDn+o75T8+G4Q4RPT1qQpRqRsEA+8ZkcmM+p94+moPxTPZ1VD2ziji2oW0PBeOYE\n\tsgYBQHdN1lFZYULgR2wnhf5Ew1F4AEp1mcIEAQCW88foVlgWOfYMIHotwIt+VV9KjE5R\n\tGoCoxLogJn2q6b2pjAONgrBTAYZouyLvG1TAnMgrTni3+6pwO7d1UPzpVqhuZFJMi7xs\n\t5ftVgKzesGdfGg+8agJL5GlFA2FRZNGAioAl0SFlLX4jROkPwr6HEU0T8X8LY7E9pwpm\n\tWzrm8iezu2nMTXzrdeY6EPjTlSJdwUOt5ZmG4gMdOVyx700chL3e7HxrCUKhYghX4xSI\n\tAysA==","X-Gm-Message-State":"AOJu0Yw1Wttls9aAQatDP5/bLmgM/GTEoTj4zefKb6FiwmcmivZztQMk\n\t4b5Qtv9yhjzwTxb+MDTul7iEnAib7Ogvh9nUbX+aliZIO5ZTfXjHgkp5dclMujE=","X-Google-Smtp-Source":"AGHT+IEvpRlfXa9UK33kaOcnse5s3ibpXh6WuFtBa16+AVNOS1++GWedi6wRvnIKe0ZRh0OsEgw75w==","X-Received":"by 2002:a05:651c:994:b0:2fa:d086:bca0 with SMTP id\n\t38308e7fff4ca-2fcda0812eamr1689391fa.10.1730137029242; \n\tMon, 28 Oct 2024 10:37:09 -0700 (PDT)","From":"Mikhail Rudenko <mike.rudenko@gmail.com>","To":"libcamera-devel@lists.libcamera.org","Cc":"Kieran Bingham <kieran.bingham@ideasonboard.com>,\n\tLaurent Pinchart <laurent.pinchart@ideasonboard.com>,\n\tMikhail Rudenko <mike.rudenko@gmail.com>","Subject":"[PATCH RFC 1/3] ipa: core: add IPASensorDelays structure","Date":"Mon, 28 Oct 2024 20:36:57 +0300","Message-ID":"<20241028173659.247353-2-mike.rudenko@gmail.com>","X-Mailer":"git-send-email 2.46.0","In-Reply-To":"<20241028173659.247353-1-mike.rudenko@gmail.com>","References":"<20241028173659.247353-1-mike.rudenko@gmail.com>","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"Add struct IPASensorDelays for passing sensor delays from\na CameraSensorHelper to a pipeline handler at initialization\ntime. Distinct member variables instead of a map ensure at compile\ntime that all delays required by the pipeline handler are defined.\n\nSigned-off-by: Mikhail Rudenko <mike.rudenko@gmail.com>\n---\n include/libcamera/ipa/core.mojom | 35 ++++++++++++++++++++++++++++++++\n 1 file changed, 35 insertions(+)","diff":"diff --git a/include/libcamera/ipa/core.mojom b/include/libcamera/ipa/core.mojom\nindex bce79724..c95cce4b 100644\n--- a/include/libcamera/ipa/core.mojom\n+++ b/include/libcamera/ipa/core.mojom\n@@ -341,3 +341,38 @@ struct IPAStream {\n \tuint32 pixelFormat;\n \tSize size;\n };\n+\n+/**\n+ * \\struct IPASensorDelays\n+ * \\brief Sensor control delays for the IPA interface\n+ *\n+ * The IPASensorDelays structure is used to pass sensoer control delays from\n+ * the CameraSensorHelper instance in an IPA to the DelayedControls instance\n+ * in a pipeline handler.\n+ */\n+\n+/**\n+ * \\var IPASensorDelays::exposureDelay\n+ * \\brief The delay for CID_EXPOSURE\n+ */\n+\n+/**\n+ * \\var IPASensorDelays::gainDelay\n+ * \\brief The delay for CID_ANALOGUE_GAIN\n+ */\n+\n+/**\n+ * \\var IPASensorDelays::hblankDelay\n+ * \\brief The delay for CID_HBLANK\n+ */\n+\n+/**\n+ * \\var IPASensorDelays::vblankDelay\n+ * \\brief The delay for CID_VBLANK\n+ */\n+struct IPASensorDelays {\n+\tuint32 exposureDelay;\n+\tuint32 gainDelay;\n+\tuint32 hblankDelay;\n+\tuint32 vblankDelay;\n+};\n","prefixes":["RFC","1/3"]}