- 追加された行はこの色です。
- 削除された行はこの色です。
*参照元 [#lbeff09d]
#backlinks
*説明 [#t128c080]
-パス: [[linux-4.4.1/arch/arm/mm/dma.h]]
-FIXME: これは何?
--この API を直接呼んではならない。
**引数 [#cd58537b]
-const void *start
--
-size_t size
--
-int dir
--
**返り値 [#rd55213f]
-なし
**参考 [#c91a5d18]
併記されているコメント。
/*
* These are private to the dma-mapping API. Do not use directly.
* Their sole purpose is to ensure that data held in the cache
* is visible to DMA, or data written by DMA to system memory is
* visible to the CPU.
*/
*実装 [#h0f3e021]
**MULTI_CACHE 無効 [#w0ac8928]
-単一の CPU 向けにビルドしていて、キャッシュの操作が 1種類しか無い場合。
--[[linux-4.4.1/MULTI_CACHE]]
#define dmac_unmap_area __glue(_CACHE,_dma_unmap_area)
-__glue() は名前を結合して一つのトークンにするマクロ。
-_CACHE は ARM アーキテクチャ名(v4, fa, arm926 など)を持つトークンで、関数名の接頭辞となる。
-例えば _CACHE が v4 であれば __glue(_CACHE,_dma_unmap_area) は v4_dma_unmap_area となる。
--[[linux-4.4.1/_CACHE]]
--[[linux-4.4.1/__glue()]]
-たとえば ARMv7 なら v7_dma_unmap_area() になる。
--[[linux-4.4.1/v7_dma_unmap_area()]]
**MULTI_CACHE 有効 [#q9b84d21]
-複数の CPU 向けにビルドしていて、キャッシュの操作が複数ある場合。
#define dmac_unmap_area cpu_cache.dma_unmap_area
-
--[[linux-4.4.1/cpu_cache(global)]]
*コメント [#w390113a]