All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] rcar-vin: always run in continues mode
@ 2018-03-10  0:09 Niklas Söderlund
  2018-03-10  0:09 ` [PATCH 1/3] rcar-vin: remove duplicated check of state in irq handler Niklas Söderlund
                   ` (2 more replies)
  0 siblings, 3 replies; 17+ messages in thread
From: Niklas Söderlund @ 2018-03-10  0:09 UTC (permalink / raw)
  To: Laurent Pinchart, Hans Verkuil, linux-media
  Cc: linux-renesas-soc, tomoharu.fukawa.eb, Niklas Söderlund

Hi,

This series reworks the R-Car VIN driver to only run using its continues 
capture mode. This improves performance a lot when userspace struggles 
to keep up and queue buffers as fast as the VIN driver consumes them.  
The solution to always be able to run in continues is to introduce a 
scratch buffer inside the VIN driver which it can pad the hardware 
capture buffer ring with if it have no buffer from userspace. Using this 
scratch buffer allows the driver to not need to stop capturing when it 
run out of buffers and then restart it once it have more buffers.

Patch 1/3 removes a duplicated check in the VIN interrupt handler. Patch 
2/3 adds the allocation of the scratch buffer. And finally 3/3 drops the 
single capture mode in favor of always running in continues capture mode 
and the scratch buffer.

The series is based on top of the latest media-tree master branch and 
can be fetched from.

git://git.ragnatech.se/linux v4l2/next/vin/mode-v1

It is tested on R-Car Koelsch Gen2 board using the onboard HDMI and CVBS 
inputs. The test application v4l2-compliance pass for both inputs 
without issues or warnings. A slight adaption of these patches to the 
pending VIN Gen3 patches have been tested with great improvement in 
capture speed for buffer strained situations and no regressions in the 
vin-tests suite.

Niklas Söderlund (3):
  rcar-vin: remove duplicated check of state in irq handler
  rcar-vin: allocate a scratch buffer at stream start
  rcar-vin: use scratch buffer and always run in continuous mode

 drivers/media/platform/rcar-vin/rcar-dma.c | 212 ++++++++++-------------------
 drivers/media/platform/rcar-vin/rcar-vin.h |  10 +-
 2 files changed, 75 insertions(+), 147 deletions(-)

-- 
2.16.2

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2018-03-14 16:36 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-03-10  0:09 [PATCH 0/3] rcar-vin: always run in continues mode Niklas Söderlund
2018-03-10  0:09 ` [PATCH 1/3] rcar-vin: remove duplicated check of state in irq handler Niklas Söderlund
2018-03-13 16:42   ` Kieran Bingham
2018-03-13 17:56     ` Niklas Söderlund
2018-03-13 17:56       ` Niklas Söderlund
2018-03-14 15:17       ` jacopo mondi
2018-03-14 16:36         ` Niklas Söderlund
2018-03-14 16:36           ` Niklas Söderlund
2018-03-13 18:43   ` Hans Verkuil
2018-03-10  0:09 ` [PATCH 2/3] rcar-vin: allocate a scratch buffer at stream start Niklas Söderlund
2018-03-12 13:55   ` jacopo mondi
2018-03-13 16:49   ` Kieran Bingham
2018-03-10  0:09 ` [PATCH 3/3] rcar-vin: use scratch buffer and always run in continuous mode Niklas Söderlund
2018-03-12 14:38   ` jacopo mondi
2018-03-12 16:33     ` Niklas Söderlund
2018-03-12 16:33       ` Niklas Söderlund
2018-03-13 18:47   ` Hans Verkuil

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.