FreeCalypso > hg > fc-selenite
annotate src/nucleus/gcc/asm_defs.h @ 112:fdecfb3bd860
.../drv_app/r2d/r2d_*.c: LCD include case fixes from Magnetite
R2D is not used in Selenite, but we strive to keep the two source trees
in sync as much as possible to reduce the diffs.
| author | Mychaela Falconia <falcon@freecalypso.org> |
|---|---|
| date | Sat, 13 Oct 2018 16:56:22 +0000 |
| parents | d076885a0669 |
| children |
| rev | line source |
|---|---|
|
74
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 /* |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 ************************************************************************ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 * |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 * Copyright Mentor Graphics Corporation 2002 |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 * All Rights Reserved. |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 * |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 * THIS WORK CONTAINS TRADE SECRET AND PROPRIETARY INFORMATION WHICH IS |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 * THE PROPERTY OF MENTOR GRAPHICS CORPORATION OR ITS LICENSORS AND IS |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 * SUBJECT TO LICENSE TERMS. |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 * |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 ************************************************************************ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 ************************************************************************ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 * |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 * FILE NAME VERSION |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 * |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 * asm_defs.inc Nucleus PLUS\ARM925\Code Composer 1.14.1 |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 * |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 * COMPONENT |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 * |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 * IN - Initialization |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 * |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22 * DESCRIPTION |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 * |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 * This file contains the target processor dependent initialization |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 * values used in int.s, tct.s, and tmt.s |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 * |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27 * HISTORY |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 * |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 * NAME DATE REMARKS |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 * |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 * B. Ronquillo 08-28-2002 Released version 1.13.1 |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 * |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 ************************************************************************ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36 /* |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 ********************************** |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38 * BOARD INITIALIZATION CONSTANTS * |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
39 ********************************** |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
40 * Begin define constants used in low-level initialization. |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
41 */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
42 |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
43 /* CPSR control byte definitions */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
44 #define LOCKOUT 0xC0 /* Interrupt lockout value */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
45 #define LOCK_MSK 0xC0 /* Interrupt lockout mask value */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
46 #define MODE_MASK 0x1F /* Processor Mode Mask */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
47 #define SUP_MODE 0x13 /* Supervisor Mode (SVC) */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
48 #define IRQ_MODE 0x12 /* Interrupt Mode (IRQ) */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
49 #define IRQ_MODE_OR_LOCKOUT 0xD2 /* Combined IRQ_MODE OR'ed with */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
50 /* LOCKOUT */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
51 #define FIQ_MODE 0x11 /* Fast Interrupt Mode (FIQ) */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
52 #define IRQ_BIT 0x80 /* Interrupt bit of CPSR and SPSR */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
53 #define FIQ_BIT 0x40 /* Interrupt bit of CPSR and SPSR */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
54 #define IRQ_BIT_OR_FIQ_BIT 0xC0 /* IRQ or FIQ interrupt bit of CPSR */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
55 /* and SPSR */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
56 #define ABORT_MODE 0x17 |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
57 #define UNDEF_MODE 0x1B |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
58 |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
59 /* |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
60 ******************************************** |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
61 * TC_TCB and TC_HCB STRUCT OFFSET DEFINES * |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
62 ******************************************** |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
63 */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
64 #define TC_CREATED 0x00 /* Node for linking to created task */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
65 /* list */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
66 #define TC_ID 0x0C /* Internal TCB ID */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
67 #define TC_NAME 0x10 /* Task name */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
68 #define TC_STATUS 0x18 /* Task status */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
69 #define TC_DELAYED_SUSPEND 0x19 /* Delayed task suspension */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
70 #define TC_PRIORITY 0x1A /* Task priority */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
71 #define TC_PREEMPTION 0x1B /* Task preemption enable */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
72 #define TC_SCHEDULED 0x1C /* Task scheduled count */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
73 #define TC_CUR_TIME_SLICE 0x20 /* Current time slice */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
74 #define TC_STACK_START 0x24 /* Stack starting address */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
75 #define TC_STACK_END 0x28 /* Stack ending address */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
76 #define TC_STACK_POINTER 0x2C /* Task stack pointer */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
77 #define TC_STACK_SIZE 0x30 /* Task stack's size */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
78 #define TC_STACK_MINIMUM 0x34 /* Minimum stack size */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
79 #define TC_CURRENT_PROTECT 0x38 /* Current protection */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
80 #define TC_SAVED_STACK_PTR 0x3C /* Previous stack pointer */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
81 #define TC_ACTIVE_NEXT 0x3C /* Next activated HISR */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
82 #define TC_TIME_SLICE 0x40 /* Task time slice value */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
83 #define TC_ACTIVATION_COUNT 0x40 /* Activation counter */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
84 #define TC_HISR_ENTRY 0x44 /* HISR entry function */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
85 #define TC_HISR_SU_MODE 0x58 /* Sup/User mode indicator for HISRs */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
86 #define TC_HISR_MODULE 0x5C /* Module identifier for HISR's */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
87 #define TC_SU_MODE 0xA8 /* Sup/User mode indicator for Tasks */ |
|
d076885a0669
src/nucleus/gcc: initial import from Citrine
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
88 #define TC_MODULE 0xAC /* Module identifier for Tasks */ |
