Nios® V/II Embedded Design Suite (EDS)
Support for Embedded Development Tools, Processors (SoCs and Nios® V/II processor), Embedded Development Suites (EDSs), Boot and Configuration, Operating Systems, C and C++

Enhanced Interrupt API

Altera_Forum
Honored Contributor II
1,276 Views

alt_irq_interruptible() and alt_irq_non_interruptible() have been deprecated. 

 

Are there equivalent functions available in the enhanced API or are these functions no longer needed because of the enhanced API? 

 

Thanks.
0 Kudos
3 Replies
Altera_Forum
Honored Contributor II
489 Views

I have the same problem! 

There is a solution or I have to use the EIC? 

 

Thanks!
0 Kudos
Altera_Forum
Honored Contributor II
489 Views

Same question here! I read the doc and still can't get a solution to make an ISR interruptible with IIC and Enhanced API. Or are all interrupts interruptible at default? 

(Probably I didn't read it good enough or get the idea of how to make it interruptible) 

 

For a moment, I change the define ALT_ENHANCED_INTERRUPT_API_PRESENT in system.h manually to ALT_LEGACY_INTERRUPT_API_PRESENT.  

This is neccessary in order to use the old API. 

 

So just a workaround..... 

 

Any other solutions are appreciated here too! 

Thanks
0 Kudos
Altera_Forum
Honored Contributor II
489 Views

We now implemented Altera's vic as External Interrupt Controller(eic). And now we can make use of the enhanced interrupt api

 

If you use the vic you don't need to tell your ISR that it is interruptible by software anymore.  

You have to set the preemption options in the bsp in order to manage that interrupts are interruptible. 

So in your software you don't need to worry about calling alt_irq_interruptible() and alt_irq_non_interruptible() the right way. 

 

But I've only used the VIC for some days and will examine it a bit more......
0 Kudos
Reply