]> rtime.felk.cvut.cz Git - zynq/linux.git/commit
xilinx: v4l: m2m: Set default mode for framebuffer IP
authorDevarsh Thakkar <devarsh.thakkar@xilinx.com>
Tue, 9 Oct 2018 23:30:23 +0000 (16:30 -0700)
committerMichal Simek <michal.simek@xilinx.com>
Mon, 15 Oct 2018 06:17:50 +0000 (08:17 +0200)
commit94aa6314ac2dc71a78104adc8c4671549113353d
tree94453b93830b05f8b47449d27719de940dcb5e29
parent96b495cb1a071552faa01f30aea03c44ba3ace72
xilinx: v4l: m2m: Set default mode for framebuffer IP

- Set the framebuffer IP to default mode instead of auto-restart
  mode for mem2mem usecases due to reason explained below:

- By framebuffer IP is programmed by driver to use a special mode
  called auto_restart mode or free-running mode in which core processes
  data periodically irrespective of input rate.

- So in this scenario, if input is stalled for sometime,
  then framebuffer IP will still process with previous data
  and transmit/receive the DMA descriptors.

- This behaviour of auto_restart or free-running mode is fine for
  streaming usecases where display device needs to be provided
  with data at a consistent rate but is not acceptable for mem2mem usecases
  where output needs to have exact 1-to-1 relationship with input
  without any duplication of frames.

- Furthermore this gives a performance benefit for mem2mem usecases
  as the default mode doesn't require to stage a descriptor and
  instead the active descriptor can be marked as complete after
  interrupt is received to process next descriptor.

Signed-off-by: Devarsh Thakkar <devarsh.thakkar@xilinx.com>
Reviewed-by: Satish Kumar Nagireddy <satish.nagireddy.nagireddy@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
drivers/media/platform/xilinx/xilinx-m2m.c