Commit 6d5bbed3 authored by Shawn Lin's avatar Shawn Lin Committed by Vinod Koul

dmaengine: core: expose max burst capability to clients

This patch add max_burst to dma_get_slave_caps for clients
to get the burst capability of slave dma controller.
Signed-off-by: default avatarShawn Lin <shawn.lin@rock-chips.com>
Signed-off-by: default avatarCaesar Wang <wxt@rock-chips.com>
Signed-off-by: default avatarVinod Koul <vinod.koul@intel.com>
parent 271e1b86
...@@ -496,6 +496,7 @@ int dma_get_slave_caps(struct dma_chan *chan, struct dma_slave_caps *caps) ...@@ -496,6 +496,7 @@ int dma_get_slave_caps(struct dma_chan *chan, struct dma_slave_caps *caps)
caps->src_addr_widths = device->src_addr_widths; caps->src_addr_widths = device->src_addr_widths;
caps->dst_addr_widths = device->dst_addr_widths; caps->dst_addr_widths = device->dst_addr_widths;
caps->directions = device->directions; caps->directions = device->directions;
caps->max_burst = device->max_burst;
caps->residue_granularity = device->residue_granularity; caps->residue_granularity = device->residue_granularity;
caps->descriptor_reuse = device->descriptor_reuse; caps->descriptor_reuse = device->descriptor_reuse;
......
...@@ -401,6 +401,7 @@ enum dma_residue_granularity { ...@@ -401,6 +401,7 @@ enum dma_residue_granularity {
* since the enum dma_transfer_direction is not defined as bits for each * since the enum dma_transfer_direction is not defined as bits for each
* type of direction, the dma controller should fill (1 << <TYPE>) and same * type of direction, the dma controller should fill (1 << <TYPE>) and same
* should be checked by controller as well * should be checked by controller as well
* @max_burst: max burst capability per-transfer
* @cmd_pause: true, if pause and thereby resume is supported * @cmd_pause: true, if pause and thereby resume is supported
* @cmd_terminate: true, if terminate cmd is supported * @cmd_terminate: true, if terminate cmd is supported
* @residue_granularity: granularity of the reported transfer residue * @residue_granularity: granularity of the reported transfer residue
...@@ -411,6 +412,7 @@ struct dma_slave_caps { ...@@ -411,6 +412,7 @@ struct dma_slave_caps {
u32 src_addr_widths; u32 src_addr_widths;
u32 dst_addr_widths; u32 dst_addr_widths;
u32 directions; u32 directions;
u32 max_burst;
bool cmd_pause; bool cmd_pause;
bool cmd_terminate; bool cmd_terminate;
enum dma_residue_granularity residue_granularity; enum dma_residue_granularity residue_granularity;
...@@ -654,6 +656,7 @@ struct dma_filter { ...@@ -654,6 +656,7 @@ struct dma_filter {
* the enum dma_transfer_direction is not defined as bits for * the enum dma_transfer_direction is not defined as bits for
* each type of direction, the dma controller should fill (1 << * each type of direction, the dma controller should fill (1 <<
* <TYPE>) and same should be checked by controller as well * <TYPE>) and same should be checked by controller as well
* @max_burst: max burst capability per-transfer
* @residue_granularity: granularity of the transfer residue reported * @residue_granularity: granularity of the transfer residue reported
* by tx_status * by tx_status
* @device_alloc_chan_resources: allocate resources and return the * @device_alloc_chan_resources: allocate resources and return the
...@@ -712,6 +715,7 @@ struct dma_device { ...@@ -712,6 +715,7 @@ struct dma_device {
u32 src_addr_widths; u32 src_addr_widths;
u32 dst_addr_widths; u32 dst_addr_widths;
u32 directions; u32 directions;
u32 max_burst;
bool descriptor_reuse; bool descriptor_reuse;
enum dma_residue_granularity residue_granularity; enum dma_residue_granularity residue_granularity;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment