*参照元 [#pedeb707]
#backlinks

*説明 [#f5e87869]
-パス: [[linux-4.4.1/arch/arm64/mm/dma-mapping.c]]

-FIXME: これは何?
--説明


**引数 [#g7db4749]
-struct device *dev
--
--[[linux-4.4.1/device]]
-struct scatterlist *sgl
--
--[[linux-4.4.1/scatterlist]]
-int nelems
--
-enum dma_data_direction dir
--
--[[linux-4.4.1/dma_data_direction]]


**返り値 [#jd801c21]
-なし


**参考 [#mf5a9158]


*実装 [#ve8d0b94]
 static void __swiotlb_sync_sg_for_cpu(struct device *dev,
                                       struct scatterlist *sgl, int nelems,
                                       enum dma_data_direction dir)
 {
         struct scatterlist *sg;
         int i;
 
         if (!is_device_dma_coherent(dev))
                 for_each_sg(sgl, sg, nelems, i)
                         __dma_unmap_area(phys_to_virt(dma_to_phys(dev, sg->dma_address)),
                                          sg->length, dir);
-
--[[linux-4.4.1/is_device_dma_coherent()]]
--[[linux-4.4.1/for_each_sg()]]
--[[linux-4.4.1/__dma_unmap_area()]]
--[[linux-4.4.1/phys_to_virt()]]
--[[linux-4.4.1/dma_to_phys()]]

         swiotlb_sync_sg_for_cpu(dev, sgl, nelems, dir);
-
--[[linux-4.4.1/swiotlb_sync_sg_for_cpu()]]

 }


*コメント [#z18dbaeb]


トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS