On 16-07-21, 20:22, Marek Vasut wrote: > Various DMA users call the dmaengine_slave_config() and expect it to > succeed, but that can only succeed if .device_config is implemented. > Add empty device_config function rather than patching all the places > which use dmaengine_slave_config(). .device_config is optional, Yes the dmaengine_slave_config() will check and return error... I think it would make sense to handle this in caller... (ignore ENOSYS..) rather than add a dummy one > > Signed-off-by: Marek Vasut <marex@xxxxxxx> > Cc: Akinobu Mita <akinobu.mita@xxxxxxxxx> > Cc: Kedareswara rao Appana <appana.durga.rao@xxxxxxxxxx> > Cc: Michal Simek <monstr@xxxxxxxxx> > Cc: Vinod Koul <vinod.koul@xxxxxxxxx> ummm..? you really need to update this :) > --- > drivers/dma/xilinx/xilinx_dma.c | 12 ++++++++++++ > 1 file changed, 12 insertions(+) > > diff --git a/drivers/dma/xilinx/xilinx_dma.c b/drivers/dma/xilinx/xilinx_dma.c > index 4b9530a7bf65..d6f4bf0d50e8 100644 > --- a/drivers/dma/xilinx/xilinx_dma.c > +++ b/drivers/dma/xilinx/xilinx_dma.c > @@ -1658,6 +1658,17 @@ static void xilinx_dma_issue_pending(struct dma_chan *dchan) > spin_unlock_irqrestore(&chan->lock, flags); > } > > +/** > + * xilinx_dma_issue_pending - Configure the DMA channel > + * @dchan: DMA channel > + * @config: channel configuration > + */ > +static int xilinx_dma_device_config(struct dma_chan *dchan, > + struct dma_slave_config *config) > +{ > + return 0; > +} > + > /** > * xilinx_dma_complete_descriptor - Mark the active descriptor as complete > * @chan : xilinx DMA channel > @@ -3096,6 +3107,7 @@ static int xilinx_dma_probe(struct platform_device *pdev) > xdev->common.device_synchronize = xilinx_dma_synchronize; > xdev->common.device_tx_status = xilinx_dma_tx_status; > xdev->common.device_issue_pending = xilinx_dma_issue_pending; > + xdev->common.device_config = xilinx_dma_device_config; > if (xdev->dma_config->dmatype == XDMA_TYPE_AXIDMA) { > dma_cap_set(DMA_CYCLIC, xdev->common.cap_mask); > xdev->common.device_prep_slave_sg = xilinx_dma_prep_slave_sg; > -- > 2.30.2 -- ~Vinod