Loading...
Searching...
No Matches
irq_arch_common.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_common.h.

#include "irq.h"
#include "sched.h"
#include "thread.h"
+ Include dependency graph for irq_arch_common.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Variables

volatile uint32_t irq_interrupt_nesting
 Indicates the interrupt nesting depth.
 

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)
 

Macro Definition Documentation

◆ critical_enter

#define critical_enter ( )    int _irq_state = irq_disable()

Definition at line 58 of file irq_arch_common.h.

◆ critical_enter_var

#define critical_enter_var (   m)    m = irq_disable()

Definition at line 66 of file irq_arch_common.h.

◆ critical_exit

#define critical_exit ( )    irq_restore(_irq_state)

Definition at line 59 of file irq_arch_common.h.

◆ critical_exit_var

#define critical_exit_var (   m)    irq_restore(m)

Definition at line 67 of file irq_arch_common.h.

◆ irq_isr_enter

#define irq_isr_enter ( )

Definition at line 47 of file irq_arch_common.h.

◆ irq_isr_exit

#define irq_isr_exit ( )

Definition at line 48 of file irq_arch_common.h.

Variable Documentation

◆ irq_interrupt_nesting

volatile uint32_t irq_interrupt_nesting
extern

Indicates the interrupt nesting depth.

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