有关WinDriver开发PCIe驱动问题?为什么无限产生中断信号?
时间:10-02
整理:3721RD
点击:
我用的xilinx pcie ip,逻辑使用xapp1052的例程,当执行完DMA写操作后,逻辑使IP产生一个传统中断INTA#
在WinDriver程序中,收到中断后无限次进入中断服务程序。按说逻辑生成的传统中断时序正确,应该就发了一次中断呀,为什么WinDriver循环进入中断呢?


请PCIe大牛帮助分析一下,十分感谢!
电平中断还是沿中断?电平中断需要清中断。
电平中断,如何清中断,是清PCIe板卡的上的中断还是驱动端的中断?windriver提供WDC_IntEnable()和 WDC_IntDisable()函数,开始DMA前打开中断,到中断服务程序时
执行 WDC_IntDisable()关闭中断,但是再次执行DMA操作,立即进入中断程序,中断并没有清除,只是关闭了?
谢谢
是电平触发的。在pcie中传统中断能用边沿触发吗?要能怎么设置?你说的清中断是清除PCIe设备的中断还是在Windriver程序里清除中断?
windriver驱动怎么清除中断,我在程序中设置的是当DMA操作前打开中断,使用WDC_IntEnable()函数,
当收到中断后,进入中断服务程序把中断关闭,WDC_IntDisabel(),但是下次DMA操作打开中断立即进入中断程序,说明PCIe一直在发中断。
谢谢
怎么不能回复了。
没人知道吗
你用的是xp系统把,换成Win7就可以拉。我就是这样的,应该是两者中断相应机制不同的问题
小编你好,本人也遇到这个问题,spartan 6 pcie x1 的,采用legacy intx 中断方式,在linux 下测试也是的,开启DMA 读操作就会无限中断,采用DMA写操作中断都不进去,也是醉了,不知道什么原因了,难道需要用MSI中断吗?
