[linux-next:master 9985/10295] drivers/dma/xilinx/xdma.c:729:1: warning: no previous prototype for 'xdma_prep_interleaved_dma'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   39676dfe52331dba909c617f213fdb21015c8d10
commit: 01e6d907656134949c4126e7fd64984d4daa4c1e [9985/10295] dmaengine: xilinx: xdma: Implement interleaved DMA transfers
config: csky-buildonly-randconfig-r004-20230509 (https://download.01.org/0day-ci/archive/20231223/202312231258.L3C56jBw-lkp@xxxxxxxxx/config)
compiler: csky-linux-gcc (GCC) 13.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231223/202312231258.L3C56jBw-lkp@xxxxxxxxx/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202312231258.L3C56jBw-lkp@xxxxxxxxx/

All warnings (new ones prefixed by >>):

>> drivers/dma/xilinx/xdma.c:729:1: warning: no previous prototype for 'xdma_prep_interleaved_dma' [-Wmissing-prototypes]
     729 | xdma_prep_interleaved_dma(struct dma_chan *chan,
         | ^~~~~~~~~~~~~~~~~~~~~~~~~


vim +/xdma_prep_interleaved_dma +729 drivers/dma/xilinx/xdma.c

   721	
   722	/**
   723	 * xdma_prep_interleaved_dma - Prepare virtual descriptor for interleaved DMA transfers
   724	 * @chan: DMA channel
   725	 * @xt: DMA transfer template
   726	 * @flags: tx flags
   727	 */
   728	struct dma_async_tx_descriptor *
 > 729	xdma_prep_interleaved_dma(struct dma_chan *chan,
   730				  struct dma_interleaved_template *xt,
   731				  unsigned long flags)
   732	{
   733		int i;
   734		u32 desc_num = 0, period_size = 0;
   735		struct dma_async_tx_descriptor *tx_desc;
   736		struct xdma_chan *xchan = to_xdma_chan(chan);
   737		struct xdma_desc *sw_desc;
   738		u64 src_addr, dst_addr;
   739	
   740		for (i = 0; i < xt->frame_size; ++i)
   741			desc_num += DIV_ROUND_UP(xt->sgl[i].size, XDMA_DESC_BLEN_MAX);
   742	
   743		sw_desc = xdma_alloc_desc(xchan, desc_num, false);
   744		if (!sw_desc)
   745			return NULL;
   746		sw_desc->dir = xt->dir;
   747		sw_desc->interleaved_dma = true;
   748		sw_desc->cyclic = flags & DMA_PREP_REPEAT;
   749		sw_desc->frames_left = xt->numf;
   750		sw_desc->periods = xt->numf;
   751	
   752		desc_num = 0;
   753		src_addr = xt->src_start;
   754		dst_addr = xt->dst_start;
   755		for (i = 0; i < xt->frame_size; ++i) {
   756			desc_num += xdma_fill_descs(sw_desc, src_addr, dst_addr, xt->sgl[i].size, desc_num);
   757			src_addr += dmaengine_get_src_icg(xt, &xt->sgl[i]) + xt->src_inc ?
   758								      xt->sgl[i].size : 0;
   759			dst_addr += dmaengine_get_dst_icg(xt, &xt->sgl[i]) + xt->dst_inc ?
   760								      xt->sgl[i].size : 0;
   761			period_size += xt->sgl[i].size;
   762		}
   763		sw_desc->period_size = period_size;
   764	
   765		tx_desc = vchan_tx_prep(&xchan->vchan, &sw_desc->vdesc, flags);
   766		if (tx_desc)
   767			return tx_desc;
   768	
   769		xdma_free_desc(&sw_desc->vdesc);
   770		return NULL;
   771	}
   772	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux