RTEMS: cpukit/score/cpu/nios2/nios2-thread-dispatch-disabled.c File Reference

| RTEMS 5.4-rc2

Loading...
Searching...
No Matches
Macros | Functions | Variables
nios2-thread-dispatch-disabled.c File Reference

NIOS II Specific Thread Dispatch Disabled Indicator. More...

`#include <rtems/score/cpu.h>`
`#include <rtems/score/nios2-utility.h>`

## Macros
#define | NIOS2_ASSERT_OFFSET(field, off)

## Functions
| NIOS2_ASSERT_OFFSET (r16, R16)
| NIOS2_ASSERT_OFFSET (r17, R17)
| NIOS2_ASSERT_OFFSET (r18, R18)
| NIOS2_ASSERT_OFFSET (r19, R19)
| NIOS2_ASSERT_OFFSET (r20, R20)
| NIOS2_ASSERT_OFFSET (r21, R21)
| NIOS2_ASSERT_OFFSET (r22, R22)
| NIOS2_ASSERT_OFFSET (r23, R23)
| NIOS2_ASSERT_OFFSET (fp, FP)
| NIOS2_ASSERT_OFFSET (status, STATUS)
| NIOS2_ASSERT_OFFSET (sp, SP)
| NIOS2_ASSERT_OFFSET (ra, RA)
| NIOS2_ASSERT_OFFSET (thread_dispatch_disabled, THREAD_DISPATCH_DISABLED)
| NIOS2_ASSERT_OFFSET (stack_mpubase, STACK_MPUBASE)
| NIOS2_ASSERT_OFFSET (stack_mpuacc, STACK_MPUACC)

## Variables
uint32_t | _Nios2_Thread_dispatch_disabled
| Nios II specific thread dispatch disabled indicator.

## Detailed Description

NIOS II Specific Thread Dispatch Disabled Indicator.

## Macro Definition Documentation

## ◆ NIOS2_ASSERT_OFFSET

#define NIOS2_ASSERT_OFFSET | ( |  | field,
|  |  | off
| ) |  |

Value:
RTEMS_STATIC_ASSERT( \
offsetof(Context_Control, field) == NIOS2_CONTEXT_OFFSET_ ## off, \
nios2_context_offset_ ## field \
)
Context_Control
Thread register context.
Definition: cpu.h:194

## Variable Documentation

## ◆ _Nios2_Thread_dispatch_disabled

uint32_t _Nios2_Thread_dispatch_disabled

Nios II specific thread dispatch disabled indicator.

This global variable is used by the interrupt dispatch support for the external interrupt controller (EIC) with shadow registers. This makes it possible to do the thread dispatch after an interrupt without disabled interrupts and thus probably reduce the maximum interrupt latency. Its purpose is to prevent unbounded stack usage of the interrupted thread.