irq_arch.h File Reference

Implementation of the kernels irq interface. More...

Detailed Description

Implementation of the kernels irq interface.

Author
Gunar Schorcht gunar.nosp@m.@sch.nosp@m.orcht.nosp@m..net

Definition in file irq_arch.h.

#include "irq.h"
#include "sched.h"
#include "thread.h"
+ Include dependency graph for irq_arch.h:

Go to the source code of this file.

Variables

uint32_t irq_interrupt_nesting
 Indicates the interrupt nesting depth. More...
 

Macros to enter and exit an ISR

Since all the stuff is done in _frxt_int_enter and _frxt_int_exit, these macros are doing nothing and are kept only for source code compatibility.

#define irq_isr_enter()
 
#define irq_isr_exit()
 

Macros to enter and exit a critical region

Note
since they use a local variable they can be used only in same function
#define critical_enter()   int _irq_state = irq_disable()
 
#define critical_exit()   irq_restore(_irq_state)
 

Macros to enter and exit a critical region with state variable

#define critical_enter_var(m)   m = irq_disable()
 
#define critical_exit_var(m)   irq_restore(m)
 

Software interrupt types

These definitions are used to distinguish different types of software interrupts in software interrupt handler.

#define ETS_SOFT_INT_NONE   0
 
#define ETS_SOFT_INT_YIELD   1
 
#define ETS_SOFT_INT_HDL_MAC   2
 

Variable Documentation

◆ irq_interrupt_nesting

uint32_t irq_interrupt_nesting

Indicates the interrupt nesting depth.

The variable is increment on entry into and decremented on exit from an ISR.