Message ID | 20190813094020.10277-1-kieran.bingham@ideasonboard.com |
---|---|
Headers | show |
Series |
|
Related | show |
Thanks, This series is now pushed to master excluding the 6/6 proof of concept. -- Kieran On 13/08/2019 10:40, Kieran Bingham wrote: > The RaspberryPi pipeline handler will require a Memory2Memory device to support > it's ISP processing. An initial RFC of this has been posted some time ago. > > This series improves upon the V4L2M2MDevice RFC that was posted and promotes it > to it's own class. > > Support for opening a device for two streams is added by overloading the > V4L2VideoDevice::open() call to allow a second implemention to provide the > the fd and stream type, rather than opening the node and guessing the type. > > An initial test using the V4L2M2MDevice on the VIM2M virtual M2M driver is also > provided. > > Along side all of this there are a couple of small independent fixup patches > (Fix the ordering of a debug statement, and remove an unused function) and my > current state of the RaspberryPi Pipeline handler. > > > * Please Note * > > The PipelineHandlerRPi requires out of tree kernel drivers to operate. These > are available publically on the RaspberryPi foundation's linux tree, however I > have added further patches on top of those. > > A branch containing the drivers for the RPi with my patches on top is at: > > https://github.com/kbingham/linux-rpi.git rpi-4.19.y-libcamera > > > v3: > - Moved location of setFd within V4L2Device > - Fixed documentation > - Close newFd in V4L2VideoDevice::open(handle, type) error path > > v2: > - M2M device now has its own open()/close() calls > - Return codes are not lost in PipelineHandlerRPi::freeBuffers() > - unicam node added to device match. > - Test code executes in the run() rather than the init() > > *** BLURB HERE *** > > Kieran Bingham (6): > libcamera: v4l2_device: Add setFd() > libcamera: v4l2_videodevice: Fix ordering of debug statement > libcamera: v4l2_videodevice: Support M2M devices > test: v4l2_videodevice: Add M2M device test > test: v4l2_device: Remove unused function > [PoC/RFC] libcamera: pipeline: Add RaspberryPi handler > > src/libcamera/include/v4l2_device.h | 1 + > src/libcamera/include/v4l2_videodevice.h | 25 + > src/libcamera/pipeline/meson.build | 1 + > src/libcamera/pipeline/raspberrypi.cpp | 453 ++++++++++++++++++ > src/libcamera/v4l2_device.cpp | 26 + > src/libcamera/v4l2_videodevice.cpp | 202 +++++++- > test/v4l2_videodevice/meson.build | 1 + > test/v4l2_videodevice/v4l2_m2mdevice.cpp | 212 ++++++++ > .../v4l2_videodevice_test.cpp | 11 - > 9 files changed, 916 insertions(+), 16 deletions(-) > create mode 100644 src/libcamera/pipeline/raspberrypi.cpp > create mode 100644 test/v4l2_videodevice/v4l2_m2mdevice.cpp >