Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros
interrupts_64.h File Reference

Go to the source code of this file.

Macros

#define INT_MASK(intno)   (1ULL << (intno))
 
#define INTERRUPT_VECTOR(i, pl)   (0xFC000000 + ((pl) << 24) + ((i) << 8))
 
#define USER_INTERRUPT_VECTOR(i)   INTERRUPT_VECTOR(i, 0)
 
#define USER_INTERRUPT_VECTOR_BASE   INTERRUPT_VECTOR(0, 0)
 
#define INT_BREAKPOINT   (63)
 
#define INT_MEM_ERROR   0
 
#define INT_SINGLE_STEP_3   1
 
#define INT_SINGLE_STEP_2   2
 
#define INT_SINGLE_STEP_1   3
 
#define INT_SINGLE_STEP_0   4
 
#define INT_IDN_COMPLETE   5
 
#define INT_UDN_COMPLETE   6
 
#define INT_ITLB_MISS   7
 
#define INT_ILL   8
 
#define INT_GPV   9
 
#define INT_IDN_ACCESS   10
 
#define INT_UDN_ACCESS   11
 
#define INT_SWINT_3   12
 
#define INT_SWINT_2   13
 
#define INT_SWINT_1   14
 
#define INT_SWINT_0   15
 
#define INT_ILL_TRANS   16
 
#define INT_UNALIGN_DATA   17
 
#define INT_DTLB_MISS   18
 
#define INT_DTLB_ACCESS   19
 
#define INT_IDN_FIREWALL   20
 
#define INT_UDN_FIREWALL   21
 
#define INT_TILE_TIMER   22
 
#define INT_AUX_TILE_TIMER   23
 
#define INT_IDN_TIMER   24
 
#define INT_UDN_TIMER   25
 
#define INT_IDN_AVAIL   26
 
#define INT_UDN_AVAIL   27
 
#define INT_IPI_3   28
 
#define INT_IPI_2   29
 
#define INT_IPI_1   30
 
#define INT_IPI_0   31
 
#define INT_PERF_COUNT   32
 
#define INT_AUX_PERF_COUNT   33
 
#define INT_INTCTRL_3   34
 
#define INT_INTCTRL_2   35
 
#define INT_INTCTRL_1   36
 
#define INT_INTCTRL_0   37
 
#define INT_BOOT_ACCESS   38
 
#define INT_WORLD_ACCESS   39
 
#define INT_I_ASID   40
 
#define INT_D_ASID   41
 
#define INT_DOUBLE_FAULT   42
 
#define NUM_INTERRUPTS   43
 
#define QUEUED_INTERRUPTS
 
#define NONQUEUED_INTERRUPTS
 
#define CRITICAL_MASKED_INTERRUPTS
 
#define CRITICAL_UNMASKED_INTERRUPTS
 
#define MASKABLE_INTERRUPTS
 
#define UNMASKABLE_INTERRUPTS
 
#define SYNC_INTERRUPTS
 
#define NON_SYNC_INTERRUPTS
 

Macro Definition Documentation

#define CRITICAL_MASKED_INTERRUPTS
Value:
( \
INT_MASK(INT_MEM_ERROR) | \
INT_MASK(INT_SINGLE_STEP_3) | \
INT_MASK(INT_SINGLE_STEP_2) | \
INT_MASK(INT_SINGLE_STEP_1) | \
INT_MASK(INT_SINGLE_STEP_0) | \
INT_MASK(INT_IDN_COMPLETE) | \
INT_MASK(INT_UDN_COMPLETE) | \
INT_MASK(INT_IDN_FIREWALL) | \
INT_MASK(INT_UDN_FIREWALL) | \
INT_MASK(INT_TILE_TIMER) | \
INT_MASK(INT_AUX_TILE_TIMER) | \
INT_MASK(INT_IDN_TIMER) | \
INT_MASK(INT_UDN_TIMER) | \
INT_MASK(INT_IDN_AVAIL) | \
INT_MASK(INT_UDN_AVAIL) | \
INT_MASK(INT_IPI_3) | \
INT_MASK(INT_IPI_2) | \
INT_MASK(INT_IPI_1) | \
INT_MASK(INT_IPI_0) | \
INT_MASK(INT_PERF_COUNT) | \
INT_MASK(INT_AUX_PERF_COUNT) | \
INT_MASK(INT_INTCTRL_3) | \
INT_MASK(INT_INTCTRL_2) | \
INT_MASK(INT_INTCTRL_1) | \
INT_MASK(INT_INTCTRL_0) | \
0)

Definition at line 134 of file interrupts_64.h.

#define CRITICAL_UNMASKED_INTERRUPTS
Value:
( \
INT_MASK(INT_ITLB_MISS) | \
INT_MASK(INT_ILL) | \
INT_MASK(INT_GPV) | \
INT_MASK(INT_IDN_ACCESS) | \
INT_MASK(INT_UDN_ACCESS) | \
INT_MASK(INT_SWINT_3) | \
INT_MASK(INT_SWINT_2) | \
INT_MASK(INT_SWINT_1) | \
INT_MASK(INT_SWINT_0) | \
INT_MASK(INT_ILL_TRANS) | \
INT_MASK(INT_UNALIGN_DATA) | \
INT_MASK(INT_DTLB_MISS) | \
INT_MASK(INT_DTLB_ACCESS) | \
INT_MASK(INT_BOOT_ACCESS) | \
INT_MASK(INT_WORLD_ACCESS) | \
INT_MASK(INT_I_ASID) | \
INT_MASK(INT_D_ASID) | \
INT_MASK(INT_DOUBLE_FAULT) | \
0)

Definition at line 161 of file interrupts_64.h.

#define INT_AUX_PERF_COUNT   33

Definition at line 73 of file interrupts_64.h.

#define INT_AUX_TILE_TIMER   23

Definition at line 63 of file interrupts_64.h.

#define INT_BOOT_ACCESS   38

Definition at line 78 of file interrupts_64.h.

#define INT_BREAKPOINT   (63)

Additional synthetic interrupt.

Definition at line 38 of file interrupts_64.h.

#define INT_D_ASID   41

Definition at line 81 of file interrupts_64.h.

#define INT_DOUBLE_FAULT   42

Definition at line 82 of file interrupts_64.h.

#define INT_DTLB_ACCESS   19

Definition at line 59 of file interrupts_64.h.

#define INT_DTLB_MISS   18

Definition at line 58 of file interrupts_64.h.

#define INT_GPV   9

Definition at line 49 of file interrupts_64.h.

#define INT_I_ASID   40

Definition at line 80 of file interrupts_64.h.

#define INT_IDN_ACCESS   10

Definition at line 50 of file interrupts_64.h.

#define INT_IDN_AVAIL   26

Definition at line 66 of file interrupts_64.h.

#define INT_IDN_COMPLETE   5

Definition at line 45 of file interrupts_64.h.

#define INT_IDN_FIREWALL   20

Definition at line 60 of file interrupts_64.h.

#define INT_IDN_TIMER   24

Definition at line 64 of file interrupts_64.h.

#define INT_ILL   8

Definition at line 48 of file interrupts_64.h.

#define INT_ILL_TRANS   16

Definition at line 56 of file interrupts_64.h.

#define INT_INTCTRL_0   37

Definition at line 77 of file interrupts_64.h.

#define INT_INTCTRL_1   36

Definition at line 76 of file interrupts_64.h.

#define INT_INTCTRL_2   35

Definition at line 75 of file interrupts_64.h.

#define INT_INTCTRL_3   34

Definition at line 74 of file interrupts_64.h.

#define INT_IPI_0   31

Definition at line 71 of file interrupts_64.h.

#define INT_IPI_1   30

Definition at line 70 of file interrupts_64.h.

#define INT_IPI_2   29

Definition at line 69 of file interrupts_64.h.

#define INT_IPI_3   28

Definition at line 68 of file interrupts_64.h.

#define INT_ITLB_MISS   7

Definition at line 47 of file interrupts_64.h.

#define INT_MASK (   intno)    (1ULL << (intno))

Mask for an interrupt.

Definition at line 23 of file interrupts_64.h.

#define INT_MEM_ERROR   0

Definition at line 40 of file interrupts_64.h.

#define INT_PERF_COUNT   32

Definition at line 72 of file interrupts_64.h.

#define INT_SINGLE_STEP_0   4

Definition at line 44 of file interrupts_64.h.

#define INT_SINGLE_STEP_1   3

Definition at line 43 of file interrupts_64.h.

#define INT_SINGLE_STEP_2   2

Definition at line 42 of file interrupts_64.h.

#define INT_SINGLE_STEP_3   1

Definition at line 41 of file interrupts_64.h.

#define INT_SWINT_0   15

Definition at line 55 of file interrupts_64.h.

#define INT_SWINT_1   14

Definition at line 54 of file interrupts_64.h.

#define INT_SWINT_2   13

Definition at line 53 of file interrupts_64.h.

#define INT_SWINT_3   12

Definition at line 52 of file interrupts_64.h.

#define INT_TILE_TIMER   22

Definition at line 62 of file interrupts_64.h.

#define INT_UDN_ACCESS   11

Definition at line 51 of file interrupts_64.h.

#define INT_UDN_AVAIL   27

Definition at line 67 of file interrupts_64.h.

#define INT_UDN_COMPLETE   6

Definition at line 46 of file interrupts_64.h.

#define INT_UDN_FIREWALL   21

Definition at line 61 of file interrupts_64.h.

#define INT_UDN_TIMER   25

Definition at line 65 of file interrupts_64.h.

#define INT_UNALIGN_DATA   17

Definition at line 57 of file interrupts_64.h.

#define INT_WORLD_ACCESS   39

Definition at line 79 of file interrupts_64.h.

#define INTERRUPT_VECTOR (   i,
  pl 
)    (0xFC000000 + ((pl) << 24) + ((i) << 8))

Where a given interrupt executes

Definition at line 28 of file interrupts_64.h.

#define MASKABLE_INTERRUPTS
Value:
( \
INT_MASK(INT_MEM_ERROR) | \
INT_MASK(INT_SINGLE_STEP_3) | \
INT_MASK(INT_SINGLE_STEP_2) | \
INT_MASK(INT_SINGLE_STEP_1) | \
INT_MASK(INT_SINGLE_STEP_0) | \
INT_MASK(INT_IDN_COMPLETE) | \
INT_MASK(INT_UDN_COMPLETE) | \
INT_MASK(INT_IDN_FIREWALL) | \
INT_MASK(INT_UDN_FIREWALL) | \
INT_MASK(INT_TILE_TIMER) | \
INT_MASK(INT_AUX_TILE_TIMER) | \
INT_MASK(INT_IDN_TIMER) | \
INT_MASK(INT_UDN_TIMER) | \
INT_MASK(INT_IDN_AVAIL) | \
INT_MASK(INT_UDN_AVAIL) | \
INT_MASK(INT_IPI_3) | \
INT_MASK(INT_IPI_2) | \
INT_MASK(INT_IPI_1) | \
INT_MASK(INT_IPI_0) | \
INT_MASK(INT_PERF_COUNT) | \
INT_MASK(INT_AUX_PERF_COUNT) | \
INT_MASK(INT_INTCTRL_3) | \
INT_MASK(INT_INTCTRL_2) | \
INT_MASK(INT_INTCTRL_1) | \
INT_MASK(INT_INTCTRL_0) | \
0)

Definition at line 181 of file interrupts_64.h.

#define NON_SYNC_INTERRUPTS
Value:
( \
INT_MASK(INT_MEM_ERROR) | \
INT_MASK(INT_IDN_FIREWALL) | \
INT_MASK(INT_UDN_FIREWALL) | \
INT_MASK(INT_TILE_TIMER) | \
INT_MASK(INT_AUX_TILE_TIMER) | \
INT_MASK(INT_IDN_TIMER) | \
INT_MASK(INT_UDN_TIMER) | \
INT_MASK(INT_IDN_AVAIL) | \
INT_MASK(INT_UDN_AVAIL) | \
INT_MASK(INT_IPI_3) | \
INT_MASK(INT_IPI_2) | \
INT_MASK(INT_IPI_1) | \
INT_MASK(INT_IPI_0) | \
INT_MASK(INT_PERF_COUNT) | \
INT_MASK(INT_AUX_PERF_COUNT) | \
INT_MASK(INT_INTCTRL_3) | \
INT_MASK(INT_INTCTRL_2) | \
INT_MASK(INT_INTCTRL_1) | \
INT_MASK(INT_INTCTRL_0) | \
INT_MASK(INT_BOOT_ACCESS) | \
INT_MASK(INT_WORLD_ACCESS) | \
INT_MASK(INT_I_ASID) | \
INT_MASK(INT_D_ASID) | \
INT_MASK(INT_DOUBLE_FAULT) | \
0)

Definition at line 249 of file interrupts_64.h.

#define NONQUEUED_INTERRUPTS
Value:
( \
INT_MASK(INT_SINGLE_STEP_3) | \
INT_MASK(INT_SINGLE_STEP_2) | \
INT_MASK(INT_SINGLE_STEP_1) | \
INT_MASK(INT_SINGLE_STEP_0) | \
INT_MASK(INT_ITLB_MISS) | \
INT_MASK(INT_ILL) | \
INT_MASK(INT_GPV) | \
INT_MASK(INT_IDN_ACCESS) | \
INT_MASK(INT_UDN_ACCESS) | \
INT_MASK(INT_SWINT_3) | \
INT_MASK(INT_SWINT_2) | \
INT_MASK(INT_SWINT_1) | \
INT_MASK(INT_SWINT_0) | \
INT_MASK(INT_ILL_TRANS) | \
INT_MASK(INT_UNALIGN_DATA) | \
INT_MASK(INT_DTLB_MISS) | \
INT_MASK(INT_DTLB_ACCESS) | \
0)

Definition at line 115 of file interrupts_64.h.

#define NUM_INTERRUPTS   43

Definition at line 84 of file interrupts_64.h.

#define QUEUED_INTERRUPTS
Value:
( \
INT_MASK(INT_MEM_ERROR) | \
INT_MASK(INT_IDN_COMPLETE) | \
INT_MASK(INT_UDN_COMPLETE) | \
INT_MASK(INT_IDN_FIREWALL) | \
INT_MASK(INT_UDN_FIREWALL) | \
INT_MASK(INT_TILE_TIMER) | \
INT_MASK(INT_AUX_TILE_TIMER) | \
INT_MASK(INT_IDN_TIMER) | \
INT_MASK(INT_UDN_TIMER) | \
INT_MASK(INT_IDN_AVAIL) | \
INT_MASK(INT_UDN_AVAIL) | \
INT_MASK(INT_IPI_3) | \
INT_MASK(INT_IPI_2) | \
INT_MASK(INT_IPI_1) | \
INT_MASK(INT_IPI_0) | \
INT_MASK(INT_PERF_COUNT) | \
INT_MASK(INT_AUX_PERF_COUNT) | \
INT_MASK(INT_INTCTRL_3) | \
INT_MASK(INT_INTCTRL_2) | \
INT_MASK(INT_INTCTRL_1) | \
INT_MASK(INT_INTCTRL_0) | \
INT_MASK(INT_BOOT_ACCESS) | \
INT_MASK(INT_WORLD_ACCESS) | \
INT_MASK(INT_I_ASID) | \
INT_MASK(INT_D_ASID) | \
INT_MASK(INT_DOUBLE_FAULT) | \
0)

Definition at line 87 of file interrupts_64.h.

#define SYNC_INTERRUPTS
Value:
( \
INT_MASK(INT_SINGLE_STEP_3) | \
INT_MASK(INT_SINGLE_STEP_2) | \
INT_MASK(INT_SINGLE_STEP_1) | \
INT_MASK(INT_SINGLE_STEP_0) | \
INT_MASK(INT_IDN_COMPLETE) | \
INT_MASK(INT_UDN_COMPLETE) | \
INT_MASK(INT_ITLB_MISS) | \
INT_MASK(INT_ILL) | \
INT_MASK(INT_GPV) | \
INT_MASK(INT_IDN_ACCESS) | \
INT_MASK(INT_UDN_ACCESS) | \
INT_MASK(INT_SWINT_3) | \
INT_MASK(INT_SWINT_2) | \
INT_MASK(INT_SWINT_1) | \
INT_MASK(INT_SWINT_0) | \
INT_MASK(INT_ILL_TRANS) | \
INT_MASK(INT_UNALIGN_DATA) | \
INT_MASK(INT_DTLB_MISS) | \
INT_MASK(INT_DTLB_ACCESS) | \
0)

Definition at line 228 of file interrupts_64.h.

#define UNMASKABLE_INTERRUPTS
Value:
( \
INT_MASK(INT_ITLB_MISS) | \
INT_MASK(INT_ILL) | \
INT_MASK(INT_GPV) | \
INT_MASK(INT_IDN_ACCESS) | \
INT_MASK(INT_UDN_ACCESS) | \
INT_MASK(INT_SWINT_3) | \
INT_MASK(INT_SWINT_2) | \
INT_MASK(INT_SWINT_1) | \
INT_MASK(INT_SWINT_0) | \
INT_MASK(INT_ILL_TRANS) | \
INT_MASK(INT_UNALIGN_DATA) | \
INT_MASK(INT_DTLB_MISS) | \
INT_MASK(INT_DTLB_ACCESS) | \
INT_MASK(INT_BOOT_ACCESS) | \
INT_MASK(INT_WORLD_ACCESS) | \
INT_MASK(INT_I_ASID) | \
INT_MASK(INT_D_ASID) | \
INT_MASK(INT_DOUBLE_FAULT) | \
0)

Definition at line 208 of file interrupts_64.h.

#define USER_INTERRUPT_VECTOR (   i)    INTERRUPT_VECTOR(i, 0)

Where to store a vector for a given interrupt.

Definition at line 31 of file interrupts_64.h.

#define USER_INTERRUPT_VECTOR_BASE   INTERRUPT_VECTOR(0, 0)

The base address of user-level interrupts.

Definition at line 34 of file interrupts_64.h.