{"id":8823,"url":"https://patchwork.libcamera.org/api/covers/8823/?format=json","web_url":"https://patchwork.libcamera.org/cover/8823/","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":"<20200715140703.566298-1-naush@raspberrypi.com>","date":"2020-07-15T14:06:53","name":"[libcamera-devel,WIP,v2,00/10] Zero-copy RAW stream work","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/8823/mbox/","series":[{"id":1111,"url":"https://patchwork.libcamera.org/api/series/1111/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=1111","date":"2020-07-15T14:06:53","name":"Zero-copy RAW stream work","version":2,"mbox":"https://patchwork.libcamera.org/series/1111/mbox/"}],"comments":"https://patchwork.libcamera.org/api/covers/8823/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 170AFBD790\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed, 15 Jul 2020 14:07:12 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 562C46093A;\n\tWed, 15 Jul 2020 16:07:11 +0200 (CEST)","from mail-wr1-x433.google.com (mail-wr1-x433.google.com\n\t[IPv6:2a00:1450:4864:20::433])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id CF82360487\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 15 Jul 2020 16:07:09 +0200 (CEST)","by mail-wr1-x433.google.com with SMTP id a6so2876509wrm.4\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 15 Jul 2020 07:07:09 -0700 (PDT)","from naushir-VirtualBox.patuck.local ([88.97.76.4])\n\tby smtp.gmail.com with ESMTPSA id\n\tl67sm4195339wml.13.2020.07.15.07.07.07\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tWed, 15 Jul 2020 07:07:07 -0700 (PDT)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=raspberrypi.com header.i=@raspberrypi.com\n\theader.b=\"Bzj2IbMI\"; dkim-atps=neutral","DKIM-Signature":"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=d6RQmCJGtnP3knG95I+K2+q14F6DTt7HpF5INgwg1j0=;\n\tb=Bzj2IbMIymF8FiSj4P/DwghLD519PkdbV5XCqG45fTmxTtQnGvD2qbQ7bOfBfcbbJC\n\tRqp0+g9IWhRQYFweWQMApi6jm9O0iiLZ0UFP9IX4QVDnmMa4ecT36cYl4Wu7SQx/SLQJ\n\twqS4b3QZZnE/eegGD3LS1UXGT3eUSDDVrBTgbOc74YjVwC/Wo5ihmMQGiVxL+Ajv6YIg\n\tk22uOV8XnjEc/UOQN3dT6iXWFPwU1bIaDhEY7Vx9dU3lYEfZERiU7ZQ5bX1aDUrQzOP3\n\t+hGCK24RhfndgOjEWOw12MHzV9cAUrG+W0LLagAporcRPAIUt3yg9JzEy2oYLDe32i0V\n\thLbg==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version\n\t:content-transfer-encoding;\n\tbh=d6RQmCJGtnP3knG95I+K2+q14F6DTt7HpF5INgwg1j0=;\n\tb=SmpltI0q3m3Zhonkjs+rFw1RI01Tmaf/1Kap6pASBrN4fdMXHfl1c+i6pYFGhf4CZ7\n\tf6EbPO00TSmyJtQq+2Wr5MRqCOSRC+IbvbI8occZSZraFlk+wThhJgfvLYmB9gEaXLXo\n\tqW0SxnUdHHYEGTFds1Q3pBGV+PsOL+F4yYsVwFp5puBVBMfefR7dKum3zjGzNFRjNGuL\n\tF3p1gdSvCieRpsKC28XB6191qLpp6S/loRcSg0ZlqpDLU6QWEohyU9F7INlq4MtYofr7\n\tH9RS/oEp+PF7MrkxHwpv+8m3fcDWR8C3bObDX3/FWVa1fNonczM3yS5ebVYIw/ekWDFQ\n\tUKVw==","X-Gm-Message-State":"AOAM533I+TpTCyuEGAiyOPIw7OnALScjhG7vcTzVDX/faQ0FElANzkxV\n\tGSkoYa0HtTcaCc2vLeNWMMHUiWUM+dw=","X-Google-Smtp-Source":"ABdhPJxy0+gow5VJwK8jLI+cBpJtmF3+IrPNIkJcAJ+1/tu4q8HAlfzLODaB3LJCVXKUXn0gcn+/tw==","X-Received":"by 2002:adf:ee0f:: with SMTP id\n\ty15mr11343741wrn.76.1594822028743; \n\tWed, 15 Jul 2020 07:07:08 -0700 (PDT)","From":"Naushir Patuck <naush@raspberrypi.com>","To":"libcamera-devel@lists.libcamera.org","Date":"Wed, 15 Jul 2020 15:06:53 +0100","Message-Id":"<20200715140703.566298-1-naush@raspberrypi.com>","X-Mailer":"git-send-email 2.25.1","MIME-Version":"1.0","Subject":"[libcamera-devel] [WIP PATCH v2 00/10] Zero-copy RAW stream work","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>","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"Hi,\n\nHere is version 2 of the zero-copy RAW stream patch.  The following changes have\nbeen made over v1:\n\n- Addressed Niklas review comments.\n- Removed use of FrameBuffer::cookie() as it could be set externally.\n- Added a change to address the use of dmabufs that could have been allocated\noutside of the v4l2 device.  We must still track it in the pipeline and IPA.\n\nCommit 2/10 still will need rework once Laurnet's change for IPA configuration\npassing has been merged.\n\nThanks,\nNaush\n\n\nNaushir Patuck (10):\n  libcamera: pipeline: raspberrypi: Move RPiStream into a separate file\n  libcamera: pipeline: ipa: raspberrypi: Rework drop frame signalling\n  libcamera: pipeline: raspberrypi: Add some debug logging\n  libcamera: pipeline: raspberrypi: Increase the number of RAW buffers\n  libcamera: pipeline: raspberrypi: Remove const qualifier from\n    RPiStream\n  libcamera: pipeline: raspberrypi: Rework stream buffer logic for\n    zero-copy\n  libcamera: pipeline: raspberrypi: Fix bug in passing configuration to\n    IPA\n  libcamera: pipeline: raspberrypi: Add more robust stream buffer logic\n  libcamera: pipeline: ipa: raspberrypi: Remove use of FrameBuffer\n    cookie\n  libcamera: pipeline: raspberrypi: Handle any externally allocated\n    FrameBuffer\n\n include/libcamera/ipa/raspberrypi.h           |   2 +-\n src/ipa/raspberrypi/raspberrypi.cpp           |  21 +-\n .../pipeline/raspberrypi/meson.build          |   1 +\n .../pipeline/raspberrypi/raspberrypi.cpp      | 531 +++++++-----------\n .../pipeline/raspberrypi/rpi_stream.cpp       | 219 ++++++++\n .../pipeline/raspberrypi/rpi_stream.h         | 118 ++++\n 6 files changed, 552 insertions(+), 340 deletions(-)\n create mode 100644 src/libcamera/pipeline/raspberrypi/rpi_stream.cpp\n create mode 100644 src/libcamera/pipeline/raspberrypi/rpi_stream.h"}