{"id":15497,"url":"https://patchwork.libcamera.org/api/covers/15497/?format=json","web_url":"https://patchwork.libcamera.org/cover/15497/","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":"<20220322092257.2713521-1-naush@raspberrypi.com>","date":"2022-03-22T09:22:49","name":"[libcamera-devel,v4,0/8] Raspberry Pi: Efficient start/stop/start sequences","submitter":{"id":34,"url":"https://patchwork.libcamera.org/api/people/34/?format=json","name":"Naushir Patuck","email":"naush@raspberrypi.com"},"mbox":"https://patchwork.libcamera.org/cover/15497/mbox/","series":[{"id":2982,"url":"https://patchwork.libcamera.org/api/series/2982/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=2982","date":"2022-03-22T09:22:49","name":"Raspberry Pi: Efficient start/stop/start sequences","version":4,"mbox":"https://patchwork.libcamera.org/series/2982/mbox/"}],"comments":"https://patchwork.libcamera.org/api/covers/15497/comments/","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 8441BBD80A\n\tfor <parsemail@patchwork.libcamera.org>;\n\tTue, 22 Mar 2022 09:23:03 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id BD4EA604DC;\n\tTue, 22 Mar 2022 10:23:02 +0100 (CET)","from mail-wm1-x331.google.com (mail-wm1-x331.google.com\n\t[IPv6:2a00:1450:4864:20::331])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 615D960397\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue, 22 Mar 2022 10:23:01 +0100 (CET)","by mail-wm1-x331.google.com with SMTP id\n\tl7-20020a05600c1d0700b0038c99618859so1027776wms.2\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue, 22 Mar 2022 02:23:01 -0700 (PDT)","from naush-laptop.pitowers.org\n\t([2a00:1098:3142:14:9e9a:99af:e5a6:319b])\n\tby smtp.gmail.com with ESMTPSA id\n\tr14-20020a05600c35ce00b0038c9f469979sm1471695wmq.40.2022.03.22.02.23.00\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tTue, 22 Mar 2022 02:23:00 -0700 (PDT)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1647940982;\n\tbh=gScbv5NNko2KzK/Nlt+j8zhuk7DjKx3ZXygboVKYHps=;\n\th=To:Date:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post:\n\tList-Help:List-Subscribe:From:Reply-To:From;\n\tb=PsTxmzZJpRbEe9lb6nLGgHy8D4lTQzSqcp4topyh+OUxLcarZUWVMqtJabaqyEwwq\n\tpUpg4CT6vkhlHjloaHT9hmgJYiNGkhVa4NzqDMSMAoegW/GdahZcWhRp3Dha8B+fE+\n\tPXG9fPb3Q+O8chzPl0eoJhNJSH3VdJMdKXy2pTqQ5gG55XQg2I1t0QA7q7QNGvDJEX\n\tmrGreNPBkXIrCvs5Td0EhOEFxoOnzdPwB5RRj+D14smR+4ECzPhvbnvkVwkSoLYVnm\n\tZSMii2DNId/wRujsYdKDRVFba31IyxjKNEd/EK23NMsHs3MYdrfo7Kd3s2PbGYiH8A\n\t43vigPfdzD09A==","v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=raspberrypi.com; s=google;\n\th=from:to:cc:subject:date:message-id:mime-version\n\t:content-transfer-encoding;\n\tbh=Ol5KodlK74yFlzD1AUFn38wu4UDC3fq+yapTmjyFarA=;\n\tb=d+MLppNr6Fiw8lXggxMrHpTVl91zUAfZl8AoSLP1jm7NEuJDTztFRdA8HeTUGQB+Ru\n\tPHqZnYhbyPCJxfUyTnpEzruYRdQNrYKYn/5kD1s7id83P0s+ce2ddOTpfU+00TDx+We1\n\tPC1NZmSndF+uwpRdHezHRHpzTC351cBB+yfR+BWH6/jcQlgfqT7cyMBClFos0KFmMr39\n\tIz7EdCR5Ns+oMiEdh0ORz+1Drdsv0P3UiHWIFwYRB8J4+7m2/cbiKW35Iv25gXzoljcN\n\tGNUMYyF1q/yKHyNEhfbFTzL5w5WiatpDpZQTzHr4EjNRV6/iCJVRboKHXqN7EcF6TOzK\n\td1Sg=="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (2048-bit key; \n\tunprotected) header.d=raspberrypi.com\n\theader.i=@raspberrypi.com\n\theader.b=\"d+MLppNr\"; dkim-atps=neutral","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20210112;\n\th=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version\n\t:content-transfer-encoding;\n\tbh=Ol5KodlK74yFlzD1AUFn38wu4UDC3fq+yapTmjyFarA=;\n\tb=EYGtkEfB1P8p+GvAkMfAnXknGpJ2bijhc04sYF/DPKyqV2jmi1+HOio+69lzHCZZXb\n\tPg8GeFaTHxbgNbsb0EzH8nCtZgOEo9CIjRyCOeb4YFPOj6xvDgWlbQei474KtxSR4yeX\n\tDo2UEAAYeCB/nXHr+d+aaMXe3msXO+WrYI53+2MmVq8ls2ekQEI0Dpf2I4Y+XpRN+L9G\n\tIAtbPdD82sgVIKdtY8181p/4A0KNc+MICLwKiJew8Ec5GrW5RuyKpE1K/wYTr9U5IIOl\n\t6YEiLVgPkSsk8wRIr69aGn3mz2FVeMBvqqU5tx5SVWTcMgYgxKt50rCcWgpk2Fpnh+u9\n\t8QqQ==","X-Gm-Message-State":"AOAM5308CDh7c6Vw/ZWJk5YTEdu/AjMgBvAGOA+vXf6STANARYbAKyZH\n\tZOhTR4zE0aW6xsmT23mvtdwpOJKyASmu6A==","X-Google-Smtp-Source":"ABdhPJyo4MiVtKxfcDDJjpPuzQB/fw9w9ITnQXVuG3Zt/EPX5ZxUvIWc+w6m/AZXeKCGB0MalQp5hA==","X-Received":"by 2002:adf:c188:0:b0:1e6:8ecb:ea5a with SMTP id\n\tx8-20020adfc188000000b001e68ecbea5amr20910250wre.711.1647940980728; \n\tTue, 22 Mar 2022 02:23:00 -0700 (PDT)","To":"libcamera-devel@lists.libcamera.org","Date":"Tue, 22 Mar 2022 09:22:49 +0000","Message-Id":"<20220322092257.2713521-1-naush@raspberrypi.com>","X-Mailer":"git-send-email 2.25.1","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","Subject":"[libcamera-devel] [PATCH v4 0/8] Raspberry Pi: Efficient\n\tstart/stop/start sequences","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":"Naushir Patuck via libcamera-devel\n\t<libcamera-devel@lists.libcamera.org>","Reply-To":"Naushir Patuck <naush@raspberrypi.com>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"Hi,\n\nVersion 4 of this patch adds a few new commits to fix various things:\n\nPatch 5/8 adds some state variables to the V4L2VideoDevice class.\nPatch 6/8 stops allowing buffers to be queued when the device is stopping.\nPatch 8/8 adds a test for the new buffer cache isEmpty() member function.\n\nThanks,\nNaush\n\nNaushir Patuck (8):\n  pipeline: raspberrypi: Avoid over-allocation for ISP Output 1\n  pipeline: raspberrypi: Move freeBuffers() to the RPiCameraData class\n  pipeline: raspberrypi: Free buffers in the RPiCamera destructor and\n    re-configure\n  pipeline: raspberrypi: Repurpose RPi::Stream::reset()\n  libcamera: v4l2_videodevice: Better tracking of the device state\n  libcamera: v4l2_videodevice: Do not allow buffer queueing in stopping\n    state\n  libcamera: v4l2_videodevice: Empty the V4L2 buffer cache on\n    streamOff()\n  test: Test V4L2BufferCache::isEmpty() member function\n\n include/libcamera/internal/v4l2_videodevice.h |  4 +-\n .../pipeline/raspberrypi/raspberrypi.cpp      | 56 ++++++++++++-------\n .../pipeline/raspberrypi/rpi_stream.cpp       | 13 ++---\n .../pipeline/raspberrypi/rpi_stream.h         |  2 +-\n src/libcamera/v4l2_videodevice.cpp            | 34 +++++++++--\n test/v4l2_videodevice/buffer_cache.cpp        | 36 ++++++++++++\n 6 files changed, 112 insertions(+), 33 deletions(-)"}