{"id":19618,"url":"https://patchwork.libcamera.org/api/1.1/patches/19618/?format=json","web_url":"https://patchwork.libcamera.org/patch/19618/","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":"<20240301212121.9072-28-laurent.pinchart@ideasonboard.com>","date":"2024-03-01T21:21:16","name":"[PATCH/RFC,27/32] pipeline: raspberrypi: vc4: Use the CameraSensor embedded data API","commit_ref":null,"pull_url":null,"state":"rfc","archived":false,"hash":"977daf8fc04de1a08382fd37b9febccdc1d35f76","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/1.1/people/2/?format=json","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"delegate":null,"mbox":"https://patchwork.libcamera.org/patch/19618/mbox/","series":[{"id":4197,"url":"https://patchwork.libcamera.org/api/1.1/series/4197/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=4197","date":"2024-03-01T21:20:49","name":"libcamera: Support the upstream Unicam driver","version":1,"mbox":"https://patchwork.libcamera.org/series/4197/mbox/"}],"comments":"https://patchwork.libcamera.org/api/patches/19618/comments/","check":"pending","checks":"https://patchwork.libcamera.org/api/patches/19618/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 2FA72BD160\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri,  1 Mar 2024 21:22:02 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id D8D0562875;\n\tFri,  1 Mar 2024 22:22:01 +0100 (CET)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 6C68162964\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri,  1 Mar 2024 22:21:59 +0100 (CET)","from pendragon.ideasonboard.com (89-27-53-110.bb.dnainternet.fi\n\t[89.27.53.110])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id E9001335C;\n\tFri,  1 Mar 2024 22:21:44 +0100 (CET)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"PO8ghUEo\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1709328105;\n\tbh=X2dfK1U286UER7gay9EgBCokZrhjkVFLfSHMIsfzgf8=;\n\th=From:To:Cc:Subject:Date:In-Reply-To:References:From;\n\tb=PO8ghUEo5JeHeFjbtCNGJ2eArzzq3/dcMAqO79M8PtOHpHUrzsGjjBMstcYrS8cMu\n\tHls66q36KymYHFBLm+AeWWzWt1zhliZ1UvZbzeXrRUeAsEjXMhTwj5g7E1xHpm5ltx\n\t4Bh0ipQypp1yjLKdeQm9c28b5NLNxOrLRwvVL8d4=","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"libcamera-devel@lists.libcamera.org","Subject":"[PATCH/RFC 27/32] pipeline: raspberrypi: vc4: Use the CameraSensor\n\tembedded data API","Date":"Fri,  1 Mar 2024 23:21:16 +0200","Message-ID":"<20240301212121.9072-28-laurent.pinchart@ideasonboard.com>","X-Mailer":"git-send-email 2.43.0","In-Reply-To":"<20240301212121.9072-1-laurent.pinchart@ideasonboard.com>","References":"<20240301212121.9072-1-laurent.pinchart@ideasonboard.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>","Cc":"Sakari Ailus <sakari.ailus@iki.fi>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"Now that the CameraSensor class implements support for embedded data,\nuse the corresponding API instead of retrieving the embedded data format\nfrom the subdev manually.\n\nThis changes requires sensor kernel drivers that implement the upstream\nembedded data API based on V4L2 streams. As the API is under development\nand not merged in the upstream kernel yet, this breaks compatibility\nwith the downstream Raspberry Pi kernel.\n\nSigned-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n---\n src/libcamera/pipeline/rpi/vc4/vc4.cpp | 4 +---\n 1 file changed, 1 insertion(+), 3 deletions(-)","diff":"diff --git a/src/libcamera/pipeline/rpi/vc4/vc4.cpp b/src/libcamera/pipeline/rpi/vc4/vc4.cpp\nindex 3c3c1b30f9e3..75dc85cf62a1 100644\n--- a/src/libcamera/pipeline/rpi/vc4/vc4.cpp\n+++ b/src/libcamera/pipeline/rpi/vc4/vc4.cpp\n@@ -574,9 +574,7 @@ int Vc4CameraData::platformConfigure(const RPi::RPiCameraConfiguration *rpiConfi\n \t * supports it.\n \t */\n \tif (sensorMetadata_) {\n-\t\tV4L2SubdeviceFormat embeddedFormat;\n-\n-\t\tsensor_->device()->getFormat(1, &embeddedFormat);\n+\t\tV4L2SubdeviceFormat embeddedFormat = sensor_->embeddedDataFormat();\n \t\tV4L2DeviceFormat format{};\n \t\tformat.fourcc = V4L2PixelFormat(V4L2_META_FMT_SENSOR_DATA);\n \t\tformat.planes[0].size = embeddedFormat.size.width * embeddedFormat.size.height;\n","prefixes":["PATCH/RFC","27/32"]}