dma

    3热度

    2回答

    我是Linux内核的新手。最近,我已经通过了内核2.6.33中的sendfile syscall。以下是我的旅程序列: do_sendfile() => do_splice_direct() => splice_direct_to_actor() => do_splice_to() => do_splice_from() => splice_read,splice_write 在整个

    11热度

    2回答

    我想写一个物理内存到一个文件。内存本身不会再被触摸,因此我想使用O_DIRECT来获得最佳的写入性能。 我的第一个想法是开/dev/mem和的mmap内存和写的一切到一个文件,该文件被打开与O_DIRECT。写入调用失败(EFAULT)由mmap返回的内存地址。如果我不使用O_DIRECT,则结果为memcpy。 #include <cstdint> #include <iostream> #

    30热度

    7回答

    我正在为IA64开发一个Linux模块。我目前的问题是驱动程序使用PAGE_SIZE和PAGE_SHIFT宏来进行dma页面分配。我遇到的问题是编译驱动程序的机器不是运行驱动程序所需的机器。因此,如果编译机器上的PAGE_SIZE是2^14K,而目标机器是2^16K,那么驱动器会失败。 我不想把这个问题变成一个“最佳实践”问题有关的机器不属于运行的模块的那些编译模块。我理解这个问题。我发现人们主要

    2热度

    1回答

    我正在调查嵌入式系统的以太网驱动程序中的一些内存损坏问题。 我怀疑总线主控DMA控制器和慢速SDRAM之间的问题。所以我想在快速SRAM中使用反弹缓冲器。为此,我需要两件事:我必须将SRAM的物理地址(从总线主设备的角度来看)放入DMA控制器缓冲区描述符中,并且一旦DMA控制器报告一个数据,我必须将数据从反弹缓冲区存入SDRAM的sk_buff中传入数据包。 我一直无法确定,从阅读 http://

    2热度

    1回答

    我想了解DMA控制器功能的来龙去脉。 我正在查看8237 DMA控制器。有些信息here有一些带有寄存器值的表格。 这些是DMA自己的寄存器,还是它们是CPU的寄存器?

    1热度

    1回答

    的下面IRQ处理水渠数据的传入32轮轮空的USART3开始地址。第一IRQ TC事件读取前6个字节,然后重新编程DMA引擎在过去的24个字节来读取。第二个TC重新编程以再次读取头文件此方法将允许使用DMA的可变长度消息。但是,我似乎无法改变DMA起始地址。我希望能够将每个消息存储在一个单独的缓冲区,但它只是在后recieving每个消息写在第一个缓冲区。我究竟做错了什么?微控制器是STM32F10

    2热度

    1回答

    我试图了解8237A-5 DMA控制器的来龙去脉。我一直在阅读它,现在我已经开始在软件门级进行设计。 CS引脚低电平有效。如果它在这里得到高信号,做什么?所有其他的引脚是否都只是高Z?当信号变低时会发生什么?

    6热度

    6回答

    此处的“DMA”表示:直接存储器访问,“RDMA”是:远程直接存储器访问。 我用Java创建了一个应用程序来传输股票数据,但是我发现延迟比我预期的要大。我听说有人开发了使用“DMA/RDMA”的相同类型的应用程序,它具有良好的性能,所以我想知道我能否在Java中使用“DMA/RDMA”? 如果不是,我应该使用什么语言,以及是否有任何好的库可以使用?

    25热度

    5回答

    我想从支持DMA的PCIe硬件设备中尽快获取数据到用户空间。 问:我如何结合“直接I/O到用户空间/和/通过DMA传输” 通过LDD3阅读,看来我需要执行几个不同类型IO操作!? dma_alloc_coherent给我的物理地址,我可以传递给硬件设备。 但是当传输完成时,需要设置get_user_pages并执行copy_to_user类型的调用。这似乎是一种浪费,要求设备DMA进入内核内存(充

    3热度

    2回答

    我知道这个话题(DMA & SPI)已经在微芯片论坛的众多线程中讨论过了,实际上我已经阅读了关键字“ dma“并阅读关于dma & spi的所有主题。 ,我仍然坚持我的问​​题,我希望有人能帮助我:) 这是问题所在。 我的芯片是PIC32MX775F512H。 我想通过DMA接收(只接收)使用SPI的数据。 由于您不能在SPI中接收数据,并且只有在写入SPIBUF(SPI1ABUF)时,SPI内核