FreeCalypso > hg > ffs-editor
diff src/nucleus/gcc/asm_defs.h @ 0:92470e5d0b9e
src: partial import from FC Selenite
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Fri, 15 May 2020 01:28:16 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/nucleus/gcc/asm_defs.h Fri May 15 01:28:16 2020 +0000 @@ -0,0 +1,88 @@ +/* + ************************************************************************ + * + * Copyright Mentor Graphics Corporation 2002 + * All Rights Reserved. + * + * THIS WORK CONTAINS TRADE SECRET AND PROPRIETARY INFORMATION WHICH IS + * THE PROPERTY OF MENTOR GRAPHICS CORPORATION OR ITS LICENSORS AND IS + * SUBJECT TO LICENSE TERMS. + * + ************************************************************************ + ************************************************************************ + * + * FILE NAME VERSION + * + * asm_defs.inc Nucleus PLUS\ARM925\Code Composer 1.14.1 + * + * COMPONENT + * + * IN - Initialization + * + * DESCRIPTION + * + * This file contains the target processor dependent initialization + * values used in int.s, tct.s, and tmt.s + * + * HISTORY + * + * NAME DATE REMARKS + * + * B. Ronquillo 08-28-2002 Released version 1.13.1 + * + ************************************************************************ + */ + +/* + ********************************** + * BOARD INITIALIZATION CONSTANTS * + ********************************** + * Begin define constants used in low-level initialization. + */ + +/* CPSR control byte definitions */ +#define LOCKOUT 0xC0 /* Interrupt lockout value */ +#define LOCK_MSK 0xC0 /* Interrupt lockout mask value */ +#define MODE_MASK 0x1F /* Processor Mode Mask */ +#define SUP_MODE 0x13 /* Supervisor Mode (SVC) */ +#define IRQ_MODE 0x12 /* Interrupt Mode (IRQ) */ +#define IRQ_MODE_OR_LOCKOUT 0xD2 /* Combined IRQ_MODE OR'ed with */ + /* LOCKOUT */ +#define FIQ_MODE 0x11 /* Fast Interrupt Mode (FIQ) */ +#define IRQ_BIT 0x80 /* Interrupt bit of CPSR and SPSR */ +#define FIQ_BIT 0x40 /* Interrupt bit of CPSR and SPSR */ +#define IRQ_BIT_OR_FIQ_BIT 0xC0 /* IRQ or FIQ interrupt bit of CPSR */ + /* and SPSR */ +#define ABORT_MODE 0x17 +#define UNDEF_MODE 0x1B + +/* + ******************************************** + * TC_TCB and TC_HCB STRUCT OFFSET DEFINES * + ******************************************** + */ +#define TC_CREATED 0x00 /* Node for linking to created task */ + /* list */ +#define TC_ID 0x0C /* Internal TCB ID */ +#define TC_NAME 0x10 /* Task name */ +#define TC_STATUS 0x18 /* Task status */ +#define TC_DELAYED_SUSPEND 0x19 /* Delayed task suspension */ +#define TC_PRIORITY 0x1A /* Task priority */ +#define TC_PREEMPTION 0x1B /* Task preemption enable */ +#define TC_SCHEDULED 0x1C /* Task scheduled count */ +#define TC_CUR_TIME_SLICE 0x20 /* Current time slice */ +#define TC_STACK_START 0x24 /* Stack starting address */ +#define TC_STACK_END 0x28 /* Stack ending address */ +#define TC_STACK_POINTER 0x2C /* Task stack pointer */ +#define TC_STACK_SIZE 0x30 /* Task stack's size */ +#define TC_STACK_MINIMUM 0x34 /* Minimum stack size */ +#define TC_CURRENT_PROTECT 0x38 /* Current protection */ +#define TC_SAVED_STACK_PTR 0x3C /* Previous stack pointer */ +#define TC_ACTIVE_NEXT 0x3C /* Next activated HISR */ +#define TC_TIME_SLICE 0x40 /* Task time slice value */ +#define TC_ACTIVATION_COUNT 0x40 /* Activation counter */ +#define TC_HISR_ENTRY 0x44 /* HISR entry function */ +#define TC_HISR_SU_MODE 0x58 /* Sup/User mode indicator for HISRs */ +#define TC_HISR_MODULE 0x5C /* Module identifier for HISR's */ +#define TC_SU_MODE 0xA8 /* Sup/User mode indicator for Tasks */ +#define TC_MODULE 0xAC /* Module identifier for Tasks */