mirror of
				https://github.com/torvalds/linux.git
				synced 2025-10-31 16:48:26 +02:00 
			
		
		
		
	zynq_fpga: use sgtable-based scatterlist wrappers
Use common wrappers operating directly on the struct sg_table objects to
fix incorrect use of statterlists related calls. dma_unmap_sg() function
has to be called with the number of elements originally passed to the
dma_map_sg() function, not the one returned in sgtable's nents.
CC: stable@vger.kernel.org
Fixes: 425902f5c8 ("fpga zynq: Use the scatterlist interface")
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Reviewed-by: Xu Yilun <yilun.xu@intel.com>
Link: https://lore.kernel.org/r/20250616120932.1090614-1-m.szyprowski@samsung.com
Signed-off-by: Xu Yilun <yilun.xu@linux.intel.com>
			
			
This commit is contained in:
		
							parent
							
								
									19272b37aa
								
							
						
					
					
						commit
						37e0070322
					
				
					 1 changed files with 2 additions and 2 deletions
				
			
		|  | @ -406,7 +406,7 @@ static int zynq_fpga_ops_write(struct fpga_manager *mgr, struct sg_table *sgt) | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	priv->dma_nelms = | 	priv->dma_nelms = | ||||||
| 	    dma_map_sg(mgr->dev.parent, sgt->sgl, sgt->nents, DMA_TO_DEVICE); | 	    dma_map_sgtable(mgr->dev.parent, sgt, DMA_TO_DEVICE, 0); | ||||||
| 	if (priv->dma_nelms == 0) { | 	if (priv->dma_nelms == 0) { | ||||||
| 		dev_err(&mgr->dev, "Unable to DMA map (TO_DEVICE)\n"); | 		dev_err(&mgr->dev, "Unable to DMA map (TO_DEVICE)\n"); | ||||||
| 		return -ENOMEM; | 		return -ENOMEM; | ||||||
|  | @ -478,7 +478,7 @@ static int zynq_fpga_ops_write(struct fpga_manager *mgr, struct sg_table *sgt) | ||||||
| 	clk_disable(priv->clk); | 	clk_disable(priv->clk); | ||||||
| 
 | 
 | ||||||
| out_free: | out_free: | ||||||
| 	dma_unmap_sg(mgr->dev.parent, sgt->sgl, sgt->nents, DMA_TO_DEVICE); | 	dma_unmap_sgtable(mgr->dev.parent, sgt, DMA_TO_DEVICE, 0); | ||||||
| 	return err; | 	return err; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue
	
	 Marek Szyprowski
						Marek Szyprowski