[libcamera-devel,WIP,v2,00/10] Zero-copy RAW stream work
mbox series

Message ID 20200715140703.566298-1-naush@raspberrypi.com
Headers show
Series
  • Zero-copy RAW stream work
Related show

Message

Naushir Patuck July 15, 2020, 2:06 p.m. UTC
Hi,

Here is version 2 of the zero-copy RAW stream patch.  The following changes have
been made over v1:

- Addressed Niklas review comments.
- Removed use of FrameBuffer::cookie() as it could be set externally.
- Added a change to address the use of dmabufs that could have been allocated
outside of the v4l2 device.  We must still track it in the pipeline and IPA.

Commit 2/10 still will need rework once Laurnet's change for IPA configuration
passing has been merged.

Thanks,
Naush


Naushir Patuck (10):
  libcamera: pipeline: raspberrypi: Move RPiStream into a separate file
  libcamera: pipeline: ipa: raspberrypi: Rework drop frame signalling
  libcamera: pipeline: raspberrypi: Add some debug logging
  libcamera: pipeline: raspberrypi: Increase the number of RAW buffers
  libcamera: pipeline: raspberrypi: Remove const qualifier from
    RPiStream
  libcamera: pipeline: raspberrypi: Rework stream buffer logic for
    zero-copy
  libcamera: pipeline: raspberrypi: Fix bug in passing configuration to
    IPA
  libcamera: pipeline: raspberrypi: Add more robust stream buffer logic
  libcamera: pipeline: ipa: raspberrypi: Remove use of FrameBuffer
    cookie
  libcamera: pipeline: raspberrypi: Handle any externally allocated
    FrameBuffer

 include/libcamera/ipa/raspberrypi.h           |   2 +-
 src/ipa/raspberrypi/raspberrypi.cpp           |  21 +-
 .../pipeline/raspberrypi/meson.build          |   1 +
 .../pipeline/raspberrypi/raspberrypi.cpp      | 531 +++++++-----------
 .../pipeline/raspberrypi/rpi_stream.cpp       | 219 ++++++++
 .../pipeline/raspberrypi/rpi_stream.h         | 118 ++++
 6 files changed, 552 insertions(+), 340 deletions(-)
 create mode 100644 src/libcamera/pipeline/raspberrypi/rpi_stream.cpp
 create mode 100644 src/libcamera/pipeline/raspberrypi/rpi_stream.h