mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-03 21:26:41 +07:00
dmaengine: dw: set src and dst master select according to xfer direction
On some architectures the DMA controller can have two masters connected to different buses and thus access to memory is possible only through one and to peripheral through the other. This patch changes the src and dst master setting to match the direction of the transfer. Signed-off-by: Mans Rullgard <mans@mansr.com> Acked-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
This commit is contained in:
parent
c422025c18
commit
bb3450ad0e
@ -45,13 +45,17 @@
|
||||
DW_DMA_MSIZE_16; \
|
||||
u8 _dmsize = _is_slave ? _sconfig->dst_maxburst : \
|
||||
DW_DMA_MSIZE_16; \
|
||||
u8 _dms = (_dwc->direction == DMA_MEM_TO_DEV) ? \
|
||||
_dwc->p_master : _dwc->m_master; \
|
||||
u8 _sms = (_dwc->direction == DMA_DEV_TO_MEM) ? \
|
||||
_dwc->p_master : _dwc->m_master; \
|
||||
\
|
||||
(DWC_CTLL_DST_MSIZE(_dmsize) \
|
||||
| DWC_CTLL_SRC_MSIZE(_smsize) \
|
||||
| DWC_CTLL_LLP_D_EN \
|
||||
| DWC_CTLL_LLP_S_EN \
|
||||
| DWC_CTLL_DMS(_dwc->p_master) \
|
||||
| DWC_CTLL_SMS(_dwc->m_master)); \
|
||||
| DWC_CTLL_DMS(_dms) \
|
||||
| DWC_CTLL_SMS(_sms)); \
|
||||
})
|
||||
|
||||
/*
|
||||
|
Loading…
Reference in New Issue
Block a user