我想启动 DMA 传输进行测试。

我在内核源代码 (drivers/dma) 中偶然发现了一个 dmatest.c。我用这个模块编译了一个内核,并在没有任何参数的情况下尝试了它。

sudo modprobe dmatest

我得到了 dmesg
__dma_request_channel: fail ((null))

dmatest.ko 的先决条件是什么?
我应该加载一个特殊的 DMA 引擎吗?
是否需要 dmatest.ko 的特殊参数(默认应该探测任何东西!?)?

最佳答案

我想你可以引用 https://www.kernel.org/doc/Documentation/dmatest.txt 来获取指导。

当然,你应该在dmatest之前运行一个DMA-Engine(模块或内置),drivers/dma/下有很多DMA Controller驱动,比如amba-pl08x.c、dw_dmac.c、pl330.c等等上。

您可以使用命令“ls -1/sys/class/dma/”来打印可用的 channel 列表。

关于c - dmatest.ko - 如何使用它?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13950943/

10-13 07:31