Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
21588 Discussions

PCIe Legacy Interrupt Handling

Altera_Forum
Honored Contributor II
2,610 Views

Hi , 

We are using CYCLONE IV GX PCIe core (Native endpoint Mode) in our FPGA based card which is plugged on windows XP based system. We are unable to handle legacy interrupt for the same .Also I would like to add that we are using jungo win driver to develop driver for the card. Is there any specific procedure and handshaking required to handle the legacy interrupt. We have following observations  

· Some time application ISR is called twice for single interrupt  

· After servicing interrupt for 10-20 times it gets stuck and we are not able to get further interrupts 

 

As per Jungo Windriver document, PCI card has to provide Interrupt Command Status register for kernel to clear the asserted interrupt which we are unable to figure out from ALTERA documents. 

 

Thanks, 

Chandra
0 Kudos
4 Replies
Altera_Forum
Honored Contributor II
1,204 Views

Hi, 

 

I also face the same problem. Did you get it already? 

Any advice relating toi PCIe Interrupt Handling would be welcome.
0 Kudos
Altera_Forum
Honored Contributor II
1,204 Views

DId you find any solution?

0 Kudos
Altera_Forum
Honored Contributor II
1,204 Views

 

--- Quote Start ---  

Hi , 

We are using CYCLONE IV GX PCIe core (Native endpoint Mode) in our FPGA based card which is plugged on windows XP based system. We are unable to handle legacy interrupt for the same .Also I would like to add that we are using jungo win driver to develop driver for the card. Is there any specific procedure and handshaking required to handle the legacy interrupt. We have following observations  

· Some time application ISR is called twice for single interrupt  

· After servicing interrupt for 10-20 times it gets stuck and we are not able to get further interrupts 

As per Jungo Windriver document, PCI card has to provide Interrupt Command Status register for kernel to clear the asserted interrupt which we are unable to figure out from ALTERA documents. 

Thanks, 

Chandra 

--- Quote End ---  

 

 

What version of Quartus are you using? 

 

From memory..... 

 

V11.0 QSYS had a problem where spurious pcie int messages were sent (or not sent) which affected interrupt operation. This sounds like what you're seeing. 

 

V11.1 QSYS had a problem with gaps in data DMA'd to host memory. 

 

V12.0 QSYS had a problem whith the Qsys component editor which meant you couldn't edit existing components. 

 

V12.1 looks like it's working OK so far. 

 

 

Nial.
0 Kudos
Altera_Forum
Honored Contributor II
1,204 Views

I am using 12.0 sp 2. Maybe I should install 12.1 to be sure.. 

 

Thank you Nial.
0 Kudos
Reply