{"id":19267,"url":"https://patchwork.libcamera.org/api/1.1/patches/19267/?format=json","web_url":"https://patchwork.libcamera.org/patch/19267/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/1.1/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":"<20231204001013.404720-6-andrey.konovalov@linaro.org>","date":"2023-12-04T00:10:11","name":"[libcamera-devel,RFC,5/7] libcamera: software_isp: introduce getStatsFD()","commit_ref":null,"pull_url":null,"state":"superseded","archived":false,"hash":"3a7eb2f03eb049b03a8d245439bcd680c3684eae","submitter":{"id":25,"url":"https://patchwork.libcamera.org/api/1.1/people/25/?format=json","name":"Andrey Konovalov","email":"andrey.konovalov@linaro.org"},"delegate":null,"mbox":"https://patchwork.libcamera.org/patch/19267/mbox/","series":[{"id":4096,"url":"https://patchwork.libcamera.org/api/1.1/series/4096/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=4096","date":"2023-12-04T00:10:06","name":"libcamera: introduce Software ISP and Software IPA","version":1,"mbox":"https://patchwork.libcamera.org/series/4096/mbox/"}],"comments":"https://patchwork.libcamera.org/api/patches/19267/comments/","check":"pending","checks":"https://patchwork.libcamera.org/api/patches/19267/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 75BF1C32BC\n\tfor <parsemail@patchwork.libcamera.org>;\n\tMon,  4 Dec 2023 00:10:50 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 6969F629DB;\n\tMon,  4 Dec 2023 01:10:49 +0100 (CET)","from mail-wm1-x329.google.com (mail-wm1-x329.google.com\n\t[IPv6:2a00:1450:4864:20::329])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 6938C629CE\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon,  4 Dec 2023 01:10:48 +0100 (CET)","by mail-wm1-x329.google.com with SMTP id\n\t5b1f17b1804b1-40c07ed92fdso10505445e9.3\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSun, 03 Dec 2023 16:10:48 -0800 (PST)","from Lat-5310.. ([87.116.165.212]) by smtp.gmail.com with ESMTPSA\n\tid\n\tu29-20020adfa19d000000b003332db7d91dsm8835997wru.39.2023.12.03.16.10.47\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tSun, 03 Dec 2023 16:10:48 -0800 (PST)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1701648649;\n\tbh=Kp5Os7saySrxWS5dhphg6mg+/T0P0d0hWZqdPlc1kVw=;\n\th=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:\n\tFrom;\n\tb=rE1oFNBITicOLqrPZaRF2GmaSJeCmLqbNYAFPIyVlNOE0V9EbT2H1eXCes6ZVY7kf\n\t9T/YFjWwzMrDbRcRVMo+IGteINMjZTHiYLNqjd+8kTRLRrxC/4dbdpPTVTs4wRklVg\n\tA0oZ2bgjrDctIM9jziYuwuZbVPefinHCcvuUlQtBzmt1bK/kOhPyTMu/nWFOY1DNpm\n\tUEY7Ov5jTFcHIMl8cAKYao8DooATGbfFaVlPfZGacekOKe5BRP+ZqHT+UU2orriLos\n\t6ip7oG/emVJn9OaVyk4ICdDu3Xy/keY3oaHL3052POks84zr+ZPzLm9HgUZ/du9ebJ\n\tB1aJE3zF+CKLA==","v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=linaro.org; s=google; t=1701648648; x=1702253448;\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=KQDxGYxBvF+f14bMPWP5VTUP7nmNuM1+782hhR4rrGo=;\n\tb=lCGkwUS4g9UfjuRb91eNgCgwlBodZj3ESQp9tBJeb/dD+gDlUdZ+cQzVEsr/sqTJRJ\n\ttdyJqjoZ29xGNRm40ANf2ku/YDR1iY1cjcAp9x9XujcQWchOI4QOeCMigRH9z/6XmDFs\n\tyJQa8bPGRWZOsEqqdC7N1T4trcMresdGIu3Ux3/dDTjgyK6uHR53+cLJ4qauaV3Ac2Ob\n\tszs+Vziy065QiY8gG5+RJGCiG7gwpcqV05WXHdxra2ucCV09w5HuRevLkEr8hzUBaYjv\n\tX1gz8qkuL2Wjm1Q98aoBNoFlBybgjK7N6OUiXhz/sQOQ/DDww9cZlYmuBBG6UoR79lkU\n\tAGfA=="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (2048-bit key; \n\tunprotected) header.d=linaro.org\n\theader.i=@linaro.org header.b=\"lCGkwUS4\"; \n\tdkim-atps=neutral","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20230601; t=1701648648; x=1702253448;\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=KQDxGYxBvF+f14bMPWP5VTUP7nmNuM1+782hhR4rrGo=;\n\tb=t/gyMoW0MhcwmJWbsVrEHg1QIwJ6d3NU46j8st/SObAs+7fMr8sDSycDJi8IQUClGw\n\tZ0LmUqFdwNrOhcGqBRTm0vNHwawg65plCTVTxxVU5Zou9wmz2KJS275LPx9mAN07aE6H\n\tslDF7/rFXHtwvgQHlVyunE/HHrTXehYzYIWECKUHqy1cZ3VN/7AJCpmItN25HRsbzVMF\n\t+52Mbbia74zqMT515OPbZlJLejOEAPjhgCvYF1fnLig04k7l4wxiKra45STGbF3Zgb/g\n\tP71x1nP1UNaG2Be2QYCXHJYOLB352VXUcQc2K50/lEGMfnpYMjkuQ+yCEJ8r6oLpji42\n\thBtw==","X-Gm-Message-State":"AOJu0YwJTC7spNXGJhpA752tc219LblixtQquI4VgfvEb23LDJKkZ5BB\n\t69mH8/zysj75znQTTiC7LSBUXgdmbjoRSnr6QMA=","X-Google-Smtp-Source":"AGHT+IFHqTGXO96FaS0N29uJYsWqohsKa0W83GkywXS5XrEtlhCM4F+meZ8CzbczgmotlPMgbJz6iw==","X-Received":"by 2002:a05:600c:3422:b0:40b:5e59:b7d5 with SMTP id\n\ty34-20020a05600c342200b0040b5e59b7d5mr2114673wmp.178.1701648648200; \n\tSun, 03 Dec 2023 16:10:48 -0800 (PST)","To":"libcamera-devel@lists.libcamera.org","Date":"Mon,  4 Dec 2023 03:10:11 +0300","Message-Id":"<20231204001013.404720-6-andrey.konovalov@linaro.org>","X-Mailer":"git-send-email 2.34.1","In-Reply-To":"<20231204001013.404720-1-andrey.konovalov@linaro.org>","References":"<20231204001013.404720-1-andrey.konovalov@linaro.org>","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","Subject":"[libcamera-devel] [RFC PATCH 5/7] libcamera: software_isp:\n\tintroduce getStatsFD()","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>","From":"Andrey Konovalov via libcamera-devel\n\t<libcamera-devel@lists.libcamera.org>","Reply-To":"Andrey Konovalov <andrey.konovalov@linaro.org>","Cc":"mripard@redhat.com, g.martti@gmail.com, t.langendam@gmail.com,\n\tsrinivas.kandagatla@linaro.org, bryan.odonoghue@linaro.org,\n\tadmin@dennisbonke.com","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"The shared memory for passing the statistics to the Soft IPA is\nallocated inside the Soft ISP. The FD of this memory needs to\nbe passed to the IPA.\n\nSigned-off-by: Andrey Konovalov <andrey.konovalov@linaro.org>\n---\n include/libcamera/internal/software_isp.h              | 4 ++++\n include/libcamera/internal/software_isp/swisp_linaro.h | 2 ++\n 2 files changed, 6 insertions(+)","diff":"diff --git a/include/libcamera/internal/software_isp.h b/include/libcamera/internal/software_isp.h\nindex 556203d9..2ce3c68a 100644\n--- a/include/libcamera/internal/software_isp.h\n+++ b/include/libcamera/internal/software_isp.h\n@@ -16,6 +16,7 @@\n #include <vector>\n \n #include <libcamera/base/class.h>\n+#include <libcamera/base/shared_fd.h>\n #include <libcamera/base/signal.h>\n \n #include <libcamera/geometry.h>\n@@ -53,6 +54,9 @@ public:\n \tvirtual int queueBuffers(FrameBuffer *input,\n \t\t\t\t const std::map<unsigned int, FrameBuffer *> &outputs) = 0;\n \n+\t/* A hack to pass the FD from Soft ISP to Soft IPA */\n+\tvirtual const SharedFD &getStatsFD() = 0;\n+\n \tSignal<FrameBuffer *> inputBufferReady;\n \tSignal<FrameBuffer *> outputBufferReady;\n \ndiff --git a/include/libcamera/internal/software_isp/swisp_linaro.h b/include/libcamera/internal/software_isp/swisp_linaro.h\nindex 0d8a31a6..157898a8 100644\n--- a/include/libcamera/internal/software_isp/swisp_linaro.h\n+++ b/include/libcamera/internal/software_isp/swisp_linaro.h\n@@ -44,6 +44,8 @@ public:\n \tint queueBuffers(FrameBuffer *input,\n \t\t\t const std::map<unsigned int, FrameBuffer *> &outputs);\n \n+\tconst SharedFD &getStatsFD() { return sharedStats_.fd(); }\n+\n \tvoid process(FrameBuffer *input, FrameBuffer *output);\n \n private:\n","prefixes":["libcamera-devel","RFC","5/7"]}