gpt4 book ai didi

linux - 使用 devicetree 配置的 davinci-spi 设备驱动程序是否支持 DMA 传输?

转载 作者:太空宇宙 更新时间:2023-11-04 13:00:35 24 4
gpt4 key购买 nike

我正在尝试使用 DMA 对连接到 OMAP-L138 的 SPI 总线的 FPGA 进行编程,但没有成功。

目前,我正在使用 linux 3.19 附带的 davinci-spi 驱动程序 (drivers/spi/spi-davinci.c)。 FPGA 配置成功(未启用 DMA),但速度很慢。我正在使用设备树来配置 SPI 接口(interface)。

我想使用 DMA 来提高性能,但是从 spi-davinci.c 源代码及其设备树绑定(bind)来看,驱动程序在配置设备树时似乎不支持 DMA。我的理解正确吗?如果是这样,是否有任何计划在使用设备树时使用 davinci 的 SPI 驱动程序支持 DMA 传输?

最佳答案

以下是实现您的目标的一些指南:

首先,检查 SPI 是否有自己的 DMA 引擎。如果没有,可能是板上有一个通用的 DMA Controller 。您可以通过查看 SPI 数据表和电路板互连原理图来检查这一点。

如果以上都不成立,则不能将 DMA 与 SPI 一起使用。

如果 SPI 有自己的 DMA,您需要为其编写驱动程序。如果板上有 DMA,它可能被其他组件使用,搜索该特定设备的 dma_dngine 驱动程序。然后,您需要为该特定 DMA 引擎创建一个 DMA 客户端。

请阅读:

DMA Provider

DMA Client

祝你好运

关于linux - 使用 devicetree 配置的 davinci-spi 设备驱动程序是否支持 DMA 传输?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34005873/

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