阅读:1540回复:0
CE下PCI网卡的传输方式
今天看到MSDN上有关的文章:
The Windows CE NDIS implementation does not support direct memory access (DMA). Do not use the NdisSetupDmaTransfer, NdisCompleteDmaTransfer, NdisMRegisterDmaChannel, NdisMDeregisterDmaChannel, NdisMAllocateMapRegisters, NdisMFreeMapRegisters, NdisMReadDmaCounter, and NdisGetSharedDataAlignment functions. Use the NdisMAllocateSharedMemory and NdisMFreeSharedMemory functions for PCI bus master DMA transfers. 那在CE下PCI网卡用PIO么,会不会很慢啊?有没有人搞过这方面的研究啊 而且我看过CE下E100BeX代码,里面仍有对NdisMAllocateMapRegisters的调用:Mp_init.c L993 Status = NdisMAllocateMapRegisters( Adapter->AdapterHandle, 0, NDIS_DMA_32BITS, Adapter->NumTbd, NIC_MAX_PACKET_SIZE); DDK中的解释:This function reserves system resources during NIC driver initialization for subsequent busmaster DMA operations. 这个又是如何解释啊,NDIS不是不support了么? |
|