- 追加された行はこの色です。
- 削除された行はこの色です。
*参照元 [#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;
-
--参照するときは 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]