]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - lib/swiotlb.c
Merge tag 'late-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
[karo-tx-linux.git] / lib / swiotlb.c
index d23762e6652c1e02bf87f070d3164afa93dc91a8..4e8686c7e5a4085753121337755bf522ccfe6300 100644 (file)
@@ -870,13 +870,13 @@ swiotlb_map_sg_attrs(struct device *hwdev, struct scatterlist *sgl, int nelems,
                                swiotlb_full(hwdev, sg->length, dir, 0);
                                swiotlb_unmap_sg_attrs(hwdev, sgl, i, dir,
                                                       attrs);
-                               sgl[0].dma_length = 0;
+                               sg_dma_len(sgl) = 0;
                                return 0;
                        }
                        sg->dma_address = phys_to_dma(hwdev, map);
                } else
                        sg->dma_address = dev_addr;
-               sg->dma_length = sg->length;
+               sg_dma_len(sg) = sg->length;
        }
        return nelems;
 }
@@ -904,7 +904,7 @@ swiotlb_unmap_sg_attrs(struct device *hwdev, struct scatterlist *sgl,
        BUG_ON(dir == DMA_NONE);
 
        for_each_sg(sgl, sg, nelems, i)
-               unmap_single(hwdev, sg->dma_address, sg->dma_length, dir);
+               unmap_single(hwdev, sg->dma_address, sg_dma_len(sg), dir);
 
 }
 EXPORT_SYMBOL(swiotlb_unmap_sg_attrs);
@@ -934,7 +934,7 @@ swiotlb_sync_sg(struct device *hwdev, struct scatterlist *sgl,
 
        for_each_sg(sgl, sg, nelems, i)
                swiotlb_sync_single(hwdev, sg->dma_address,
-                                   sg->dma_length, dir, target);
+                                   sg_dma_len(sg), dir, target);
 }
 
 void