阅读:1073回复:0
请教DMA模式的虚拟地址获取
这时我从武安河的PCI9054的例程里摘出来的,他说的两种缓冲区是不是就是块传输DMA和分散集中DMA的两种虚拟地址的获取方式?
还有就是我看9054的DATASHEET上好像有很多DMA的时序,但不知道具体是那些时序情况对应的是BLOCK DMA,上面有针对分散/集中模式的,但对块传输DMA的时序感觉没有针对说明啊 //下面采用应用程序的数据缓冲区作为DMA数据区 status = m_CurrentTransfer->Initiate( I.Mdl(), (I.MajorFunction() == IRP_MJ_READ) ? FromDeviceToMemory : FromMemoryToDevice, LinkTo(OnDmaReady) ); /* 下面采用公用缓冲区作为DMA数据区 status = m_CurrentTransfer->Initiate( this, &m_Dma, I.Mdl(), (I.MajorFunction() == IRP_MJ_READ) ? FromDeviceToMemory : FromMemoryToDevice, LinkTo(OnDmaReady), &m_Buffer ); */ |
|
|