Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
Browse the repository at this point in the history
dma: xilinx: Add API to set framebuffer IP mode
This adds API so that client driver can set operation mode for framebuffer IP core to either auto_restart or default mode of operation : - Auto_restart or free-running mode is more suitable for streaming usecases which have a strict requirement to maintain uniform throughput to display devices. In this mode framebuffer IP core is restarted automatically after completing first transaction even if input is delayed or blocked, where core will use same descriptor again thereby maintaining consistent throughput by duplicating frames. - Default mode of operation is suitable for non-streaming usecases like mem2mem usecases where there has to be a 1-to-1 relationship for frame sequence and frame numbers with respect to input and so if input is delayed core should wait until it gets new descriptor. - Unless explicitly set by client driver framebuffer IP core should use auto_restart mode as previously, so set mode as auto_restart during channel probe. - Add enum in framebuffer channel structure to select operation mode. - Use operation mode enum to decide mode during framebuffer start and halt. - Add a function "frmbuf_find_chan" to find corresponding framebuffer channel structure from dma channel structure. - Export an API "xilinx_xdma_set_mode" to set operation mode of framebuffer IP core to either auto-restart or default. - Unlike Auto-restart mode which follows a 3-stage model where it marks the descriptor as staging on submit, as active when next interrupt is received, and eventually as complete after next interrupt is received, there is no such requirement in default mode, so for default mode we directly mark the current descriptor submitted to IP as active and then mark it as complete when next interrupt is received. - Fix some typos in xilinx_xdma_drm_config and xilinx_xdma_v4l2_config description. 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>
- Loading branch information
Devarsh Thakkar
authored and
Michal Simek
committed
Oct 15, 2018
1 parent
a7b77ed
commit 96b495c
Showing
2 changed files
with
82 additions
and
23 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters