*参照元 [#rb1750d4] #backlinks *説明 [#fd5578a7] -パス: 複数ある -パス: 複数あり --ARCH_HAS_DMA_DECLARE_COHERENT_MEMORY 有効: [[linux-4.4.1/drivers/base/dma-coherent.c]] --ARCH_HAS_DMA_DECLARE_COHERENT_MEMORY 無効: [[linux-4.4.1/include/linux/dma-mapping.h]] -FIXME: これは何? --説明 **引数 [#k41c8a8b] -struct device *dev -- --[[linux-4.4.1/device]] -phys_addr_t phys_addr -- --[[linux-4.4.1/phys_addr_t]] -dma_addr_t device_addr -- --[[linux-4.4.1/dma_addr_t]] -size_t size -- -int flags -- **返り値 [#o687f839] -int -- **参考 [#t5ac6c06] *実装 [#n2f8192f] **ARCH_HAS_DMA_DECLARE_COHERENT_MEMORY 有効: drivers/base/dma-coherent.c [#uf223709] - --[[linux-4.4.1/ARCH_HAS_DMA_DECLARE_COHERENT_MEMORY]] int dma_declare_coherent_memory(struct device *dev, phys_addr_t phys_addr, dma_addr_t device_addr, size_t size, int flags) { struct dma_coherent_mem *mem; int ret; - --[[linux-4.4.1/dma_coherent_mem]] ret = dma_init_coherent_memory(phys_addr, device_addr, size, flags, &mem); if (ret == 0) return 0; - --[[linux-4.4.1/dma_init_coherent_memory()]] if (dma_assign_coherent_memory(dev, mem) == 0) return ret; - --[[linux-4.4.1/dma_assign_coherent_memory()]] dma_release_coherent_memory(mem); return 0; - --[[linux-4.4.1/dma_release_coherent_memory()]] } EXPORT_SYMBOL(dma_declare_coherent_memory); - --[[linux-4.4.1/EXPORT_SYMBOL()]] **ARCH_HAS_DMA_DECLARE_COHERENT_MEMORY 無効: include/linux/dma-mapping.h [#o640fe07] static inline int dma_declare_coherent_memory(struct device *dev, phys_addr_t phys_addr, dma_addr_t device_addr, size_t size, int flags) { return 0; } *コメント [#u0cd0a20]