gpt4 book ai didi

linux - 使用 pci_map_single 进行多 DMA 传输

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:07:17 26 4
gpt4 key购买 nike

我正在通过此链接 http://lwn.net/2001/0712/a/dma-interface.php3 查看内核源文档.它提到 pci_map_single 只能用于单次传输。我正在编写一个 PCI 驱动程序,并且设备每 500 us 写入一次以缓冲 4KB 数据。之后它会中断。我尝试使用 pci_alloc_consistent 但它不断产生错误,指出“相干 DMA 掩码小于系统 GFP_DMA 掩码臂”。我的问题是如何使用 pci_map_single 进行多个 dma 传输。或者使用 pci_alloc_coherent 的正确方法是什么?

最佳答案

如果你的意思是你想通过同一个缓冲区进行多次 DMA 传输,你可以只使用 pci_unmap_single 然后再次映射 dma。但是你每次都需要存储dma地址,所以你可以取消映射。

关于linux - 使用 pci_map_single 进行多 DMA 传输,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31966044/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com