*参照元 [#ua571231]
#backlinks

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

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


**引数 [#t3faa199]

-struct device *dev
--
--[[linux-4.4.1/device]]
-u64 dma_base
--
-u64 size
--
-struct iommu_ops *iommu
--
--[[linux-4.4.1/iommu_ops]]
-bool coherent
--


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


**参考 [#ub4d7435]


*実装 [#l5e73f62]
 void arch_setup_dma_ops(struct device *dev, u64 dma_base, u64 size,
                         struct iommu_ops *iommu, bool coherent)
 {
         struct dma_map_ops *dma_ops;
 
-
--[[linux-4.4.1/dma_map_ops]]

         dev->archdata.dma_coherent = coherent;-
         dev->archdata.dma_coherent = coherent;
-
--参照するときは is_device_dma_coherent() を使う。
--[[linux-4.4.1/is_device_dma_coherent()]]

         if (arm_setup_iommu_dma_ops(dev, dma_base, size, iommu))
                 dma_ops = arm_get_iommu_dma_map_ops(coherent);
         else
                 dma_ops = arm_get_dma_map_ops(coherent);
 
-
--[[linux-4.4.1/arm_setup_iommu_dma_ops()]]
--[[linux-4.4.1/arm_get_iommu_dma_map_ops()]]
--[[linux-4.4.1/arm_get_dma_map_ops()]]

         set_dma_ops(dev, dma_ops);
-
--[[linux-4.4.1/set_dma_ops()]]

 }


*コメント [#j3241036]

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