*参照元 [#b530b954]
#backlinks

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

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


**引数 [#v63a0727]
-struct device *dev
--
--[[linux-4.4.1/device]]
-struct page *page
--
--[[linux-4.4.1/page]]
-unsigned long offset
--
-size_t size
--
-enum dma_data_direction dir
--
--[[linux-4.4.1/dma_data_direction]]
-struct dma_attrs *attrs
--
--[[linux-4.4.1/dma_attrs]]


**返り値 [#x2cc9783]
-dma_addr_t
--


**参考 [#ha37440b]


*実装 [#m6796325]
 /**
  * arm_dma_map_page - map a portion of a page for streaming DMA
  * @dev: valid struct device pointer, or NULL for ISA and EISA-like devices
  * @page: page that buffer resides in
  * @offset: offset into page for start of buffer
  * @size: size of buffer to map
  * @dir: DMA transfer direction
  *
  * Ensure that any data held in the cache is appropriately discarded
  * or written back.
  *
  * The device owns this memory once this call has completed.  The CPU
  * can regain ownership by calling dma_unmap_page().
  */
 static dma_addr_t arm_dma_map_page(struct device *dev, struct page *page,
              unsigned long offset, size_t size, enum dma_data_direction dir,
              struct dma_attrs *attrs)
 {
         if (!dma_get_attr(DMA_ATTR_SKIP_CPU_SYNC, attrs))
                 __dma_page_cpu_to_dev(page, offset, size, dir);
-
--[[linux-4.4.1/dma_get_attr()]]
--[[linux-4.4.1/__dma_page_cpu_to_dev()]]

         return pfn_to_dma(dev, page_to_pfn(page)) + offset;
-
--[[linux-4.4.1/pfn_to_dma()]]
--[[linux-4.4.1/page_to_pfn()]]

 }


*コメント [#de3475a5]


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