| 
			 
					阅读:1084回复:3
				 
				PCI驱动疑问高手赐教???
					1。pci接口用DMA方式是不是只能是主模式?如果可以是从模式(DMA在主板上),那怎么启动主板上的DMA.
 
							2.我用的是DSP 6205带PCI芯片,资料上说,进行PCI主模式,只支持最大长度为64KB的突发模式。那么我的dma一帧最多只能设为64KB吗 ?? 3。我用DRIVERstudio。开发。每次调试到下面 if (pXfer->SequenceTransferDescriptors(&ptd)) 处就黑屏死机。不知道为什么?? VOID PCIDMA1Device::OnDmaReady(KDmaTransfer* pXfer, KIrp I) { if (pXfer->BytesRemaining() == 0) { pXfer->Terminate(); I.Information() = I.IoctlInputBufferSize(CURRENT); I.Status() = STATUS_SUCCESS; m_DriverManagedQueue.PnpNextIrp(I); m_CurrentTransfer = NULL; delete pXfer; return; } PTRANSFER_DESCRIPTOR ptd; if (pXfer->SequenceTransferDescriptors(&ptd)) { t << \" Physical address 0x\" << ptd->td_PhysAddr.LowPart << \". Length is 0x\"<< ptd->td_Length << \".\" << EOL; } if ((ULONG) pXfer->BytesRemaining() == I.IoctlInputBufferSize()) {StartDMA(ptd->td_PhysAddr.LowPart,ptd->td_Length);} } 以上问题希望大家指教,谢谢!!!!  | 
	|
					
						
						
						
						
  | 
	
| 
			 沙发# 
								发布于:2005-03-23 21:15				
			
					不是delete的问题,还是死机。望高手解惑
 
							!!!  | 
	|
					
						
  | 
	
| 
			 板凳# 
								发布于:2005-03-23 15:44				
			
					呵呵,,又看了看,,是可以用delete的。。。				 
							 | 
	|
					
						
  | 
	
| 
			 地板# 
								发布于:2005-03-23 09:04				
			
					delete pXfer;对吗?,,,,
 
							一起学习啊,,呵呵,,,我昨天也正看了这里,,, 它说传输完毕以后删除KDmaTransfer对象,,,你觉得是这么删除吗? 我感觉是你调用pXfer->Terminate();的时候就删除了吧。。。。 讨论学习中。。。。。 DS中可以用delete操作符吗?。。。。疑问。呵呵  | 
	|
					
						
  |