参照元

説明

引数

返り値

参考

実装

CONFIG_HAS_DMA 有効: include/asm-generic/dma-mapping-common.h

static inline void dma_free_attrs(struct device *dev, size_t size,
                                     void *cpu_addr, dma_addr_t dma_handle,
                                     struct dma_attrs *attrs)
{
        struct dma_map_ops *ops = get_dma_ops(dev);
        BUG_ON(!ops);
        WARN_ON(irqs_disabled());
        if (dma_release_from_coherent(dev, get_order(size), cpu_addr))
                return;
        if (!ops->free)
                return;

        debug_dma_free_coherent(dev, size, cpu_addr, dma_handle);
        ops->free(dev, size, cpu_addr, dma_handle, attrs);
}

CONFIG_HAS_DMA 無効: include/asm-generic/dma-mapping-broken.h

static inline void dma_free_attrs(struct device *dev, size_t size,
                                  void *cpu_addr, dma_addr_t dma_handle,
                                  struct dma_attrs *attrs)
{
        /* attrs is not supported and ignored */
        dma_free_coherent(dev, size, cpu_addr, dma_handle);
}

コメント


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS