jw212
驱动牛犊
驱动牛犊
  • 注册日期2008-05-08
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分15分
  • 威望64点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
阅读:1489回复:0

CE下PCI网卡的传输方式

楼主#
更多 发布于:2010-10-14 13:47
今天看到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了么?
游客

返回顶部