dmaengine: dw-axi-dmac: Hardware handshake configuration
Added hardware handshake selection in channel config, for mem2per and per2mem case. The peripheral specific handshake interface needs to be programmed in src_per, dst_per bits of CHx_CFG register. Signed-off-by: Pandith N <pandith.n@intel.com> Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20211001140812.24977-3-pandith.n@intel.com Signed-off-by: Vinod Koul <vkoul@kernel.org>
This commit is contained in:
parent
824351668a
commit
93a7d32e9f
@ -396,6 +396,8 @@ static void axi_chan_block_xfer_start(struct axi_dma_chan *chan,
|
||||
DWAXIDMAC_TT_FC_MEM_TO_PER_DMAC;
|
||||
if (chan->chip->apb_regs)
|
||||
config.dst_per = chan->id;
|
||||
else
|
||||
config.dst_per = chan->hw_handshake_num;
|
||||
break;
|
||||
case DMA_DEV_TO_MEM:
|
||||
config.tt_fc = chan->config.device_fc ?
|
||||
@ -403,6 +405,8 @@ static void axi_chan_block_xfer_start(struct axi_dma_chan *chan,
|
||||
DWAXIDMAC_TT_FC_PER_TO_MEM_DMAC;
|
||||
if (chan->chip->apb_regs)
|
||||
config.src_per = chan->id;
|
||||
else
|
||||
config.src_per = chan->hw_handshake_num;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
Loading…
Reference in New Issue
Block a user